Skip to main content

Full text of "Compute! Magazine Issue 021"

See other formats


■^— .,         r-    T^  ri  i,  ■:  ^ 


c-^^^ 


Timekeeping 
For  The  VIC-20 


Creating  A  Simple 

The  Resource  Magazine  For  CBM/PET  •  Apple  •  Atari  •  OSI         Word  Processor 


COMPUTB 

The  Journal  For  Progressive  Computing 


$2.50 
February, 
1982 
Issue  20 
Vol,  4,  No.  2 

63379 


Programming 
Your  Home 
Insurance 
Inventory 


Named  GOSUB 
With  Variable 
Passing:  Apple 


Atari  Player- 
Missile  Graphics 
Made  Easy 


A  User  Defined 


'74470"63379" 


0  2 


Character  Editor    l^Jpriilg  ^^"^       ^^      ^^ 
ForPET/CBM  vt*^«  wi" 


Compatible  with  Apple®  Language  Card 

16K  RAM  Provided 

Additional  16K  RAM  Chips  Available, 
utilized  by  user-generated  software. 

No  Chip  to  Pull 

No  Cables  to  Attach 

Works  in  our  Expansion  Chassis 
See  your  Apple®  dealer  or 

contact  us  for  information. 


^ 


Apple  II  is  a  traderngfeat  Apple  Computer  lne?»'  -»  — *=•»  - 

Photo— An^rafffflrfimals  Enterprises'^  Marty  Stouffer  Product  ons 
"fountain  PtiOto^Avery  E.  Dee 


Kmnm&mwi^^m^^t^  \    ij^  iii,.wH,i|i 


i 


IF  YOU'RE  WAITING  FOR  THE 

PRICE  OF  WORD  PROCESSORS 

TO  FALL  WITHIN  REASON. 


Everyone  expected  it  would  happen 
sooner  or  later, ,  .with 
it  already  has!  Now  all  the  marvelous 
benefits  of  expensive  and  advanced 
word  processing  systems  are  available 
on  Commodore  computers,  America's 
largest  selling  computer  line.  WordPro 
PLUS,  when  combined  with  the  new  80 
column  CBM  8032,  creates  a  word  pro- 
cessing system  comparable  to  virtually 
any  other  top  quality  word  processor 
available— but  at  savings  of  thousands 
of  dollars! 


TM  WordPro  is  a  Registered  Trademark  of  Prolessionai  Software, 


New,  low  cost  computer  technology  is 
now  available  at  a  fraction  of  what  you 
would  expect  to  pay.  This  technology 
allowed  Commodore  to  introduce  the 
new  and  revolutionary  CBM  8032 
Computer. 

WordPro  PLUS  turns  this  new  CBM 
8032  Computer  into  a  sophisticated, 
time  saving  word  processing  tool.  With 
WordPro  PLUS,  documents  are  dis- 
played on  the  computer's  screen.  Edit- 
ing and  last  minute  revisions  are  simple 
and  easy.  No  more  lengthy  re-typing 
sessions.  Letters  and  documents  are 
easily  re-called  from  memory  storage 
for  editing  or  printing  with  final  drafts 
printed  perfectly  at  over  five  hundred 
words  per  minute! 

Inc.  WordPro  was  wrttten  By  Ste«e  Punter, 


Our  nationwide  team  of  professional 
dealers  will  show  you  how  your  office 
will  benefit  by  using  WordPro  PLUS.  At 
a  price  far  less  than  you  realize. 


Invest  in  your  office's  future. . . 
invest  in 

Call  us  today  for  the  name  of  the 
WordPro  PLUS  dealer  nearest  you. 

Professional  Software  Inc. 

166  Crescent  Road 
Needham,  MA  02194 
(617)444-5224 
TELEX:  95  1579 


(pMS  Sof twa 
Geiieral  Accou 


For  the  Commodore  8000 


Mow  there  is  an  interactive 
General  Accounting  System 
designed  especially  for  the 
first  time  user,  The  user  is  led 
through  each  function  by 
highlighted  prompts  explain- 


ing the  required  input  at  each 
point.  And  all  input  requests 
are  prompted  with  complete 
verification.  Plus,  a  step-by- 
step  instruction  manual 
guides  the  user  through  the 


General  Ledger 

Cash  Disbursements  and 
Cash  Receipts  Journal  as  wel 
as  a  General  Journal.  Main- 
tains account  balances  for 
Present  Month,  Quarter  to 
Date  and  Year  to  Date. 
Accepts  postings  from 


program.  The  user  prompts 
and  the  detailed  manual 
make  it  virtually  impossible 
for  the  first  time  user  to  get 
lost  or  to  accidentally  crash. 


Accounts  Receivable, 
Accounts  Payable,  Payroll 
and  other  programs.  Also 
provides  user  customized 
financial  statements.  Up  to 
1000  accounts  and  up  to 
99  departments. 


re  Systems 
nting  System  II 


Series  Computer  System 


Accounts  Receivable 

Invoices  and  Monthly  State- 
ments as  well  as  Credit  and 
Debit  Memos.  Accomodates 
full  or  partial  payments.  Gser 
sets  finance  charge  rate  and 
period.  User  also  sets  invoice 
aging  reports  and  aging 
breaks,  invoices  may  be  dis- 
tributed among  nine  different 
General  Ledger  accounts  with 


Accounts  Payable 

Accounts  Payable  checks 
with  full  voucher  detail. 
Detailed  check  register.  Auto- 
matic application  of  Credit 
Memos.  Gser  sets  invoice 
aging  reports  and  aging 
breaks.  Invoices  may  be  dis- 


Payroll 

Payroll  checks  with  full 
deductions  and  pay  detail. 
Pays  regular,  overtime, 
holiday  and  piece  work  hours. 
Accommodates  Weekly, 
Bi-Weekly,  Semi-Monthly  and 
Monthly  employees.  Gp  to 
eight  miscellaneous  deduc- 
tions or  payments  per 


automatic  updating  to  the 
General  Ledger.  During 
invoice  data  entry  the  invoice 
is  displayed  on  the  screen 
and  typed  exactly  as  if  in  a 
typewriter.  File  capacity  is 
2000  minus  number  of 
customers  multiplied  by  1.4. 
Five  hundred  customers 
allows  room  for  2100  invoices. 


tributed  among  nine  different 
General  Ledger  accounts  with 
automatic  updating  to  the 
General  Ledger.  File  capacity 
is  2000  minus  the  number  of 
vendors  multiplied  by  two. 


employee.  Prints  Payroll 
Journal,  Payroll  Check 
Register  and  an  Absentee 
Report  as  well  as  941  infor- 
mation and  W2  forms.  Main- 
tains Monthly,  Quarterly  and 
Yearly  totals  for  up  to  350 
employees.  Automatic 
General  Ledger  updating. 


See  your  nearest 
Commodore  dealer  for 
a  demonstration. 


CMS  Soft:ware  Systems 

2204  Camp  David     Mesquite,  TX,  75149     214  285-3581 


TASC:  The  Applesoft  Compiler. 

It  turns  your  Apple  into 

a  power  tool. 


Step  up  to  speed.  TASC,  the  Applesoft  Compiler, 
converts  a  standard  Applesoft  BASIC  program 
into  super-fast  machine  code.  By 
increasing  program  execution  speed 
up  to  20  times,  Microsoft  gives 
you  a  power  tool  for  Applesoft 
BASIC  programming. 
Highest  capacity  available. 
TASC  will  compile  and  run 
larger  programs  than  any 
other  Applesoft  Compiler.  As  a 
disk-based  system,  it  doesn't 
require  the  simultaneous  pres- 
ence of  compiler  and  program 
in  memory.  The  memory  you  save 
allows  you  to  compile  significantly 
bigger  programs. 

Power  without  bulk.  Code  expansion  of  up  to  100% 
severely  restricts  other  compilers.  TASC's  special 
code  compression  schemes  typically  limit  code 
expansion  to  only  25%.  You'll  really  appreciate  that 
with  complex  programs  or  programs  that  utilize 
Apple's  hi-res  graphic  pages. 
More  BASIC  power.  TASC's  powerful  new 
commands  increase  Applesoft  BASIC  programming 
capability.  Chain  with  COMMON  allows  compiled 
programs  to  share  variables,  so  a  main  menu 

'Applesoft  is  a  trademark  of  Apple  Computer.  Inc. 


supports  several  programs  in  a 
single  runtimie  environment. 
'      TASC's  True  Integer  Arithmetic 
and  Integer  FOR...  NEXT 
capabilities  maximize  the  execu- 
tion speed  of  compiled  programs. 
TASC's  near  total  compatibility 

with  Applesoft  speeds  compil- 
ation of  existing  programs 
with  little  or  no  modification. 
What  about  mistakes?  You 
perfect  your  programs  inter- 
actively with  Applesoft.  If  some- 
thing does  slip  by,  TASC  recovers 
from  errors  discovered  in  compilation 
and  traps  all  runtime  errors.  It  even  permits 
graceful  interruptions  during  compilation. 
See  for  yourself.  Ask  for  a  demonstration  of 
,  TASC  at  your  Microsoft  dealer.  Discover  the  software 
package  that  turns  your  Apple  into  a  power  tool. 

/HICRpSOfT 

V       consumer!  products  f 

;  A  Division  of  Microsoft  Inc 

!  10700  North  up  Way  •  Bellevue.  WA  98004 


FebruofV,  1981.  Issue  21 


COMPUTEI 


Table  of  Contents 


February  1982,  Vol.  4,  No.  2 


The  Editor's  Notes Robert  Lock,  8 

Ask  The  Readers  Robert  Lock,  Richard  N/lansfield  and  Readers.  12 

Computers  And  Society David  D.  Thornburg,  16 

The  Beginner's  Page:  Translating  Equotions  i^ichard  Mansfield,  19 

Guest  CommentorY:  Hidden  Costs  of  Computer  Technology  Craig  Brod,  22 

Applications 28 

Insurance  Inventory RobertW.  Baker,  28 

Creating  A  Simple  Word  Processor Steve  Grodijan,  36 

Transposition  Janet  Whitehead,  44 

Telecommunications:  Why  300  Baud?  Michael  E.  Day,  48 

Reading  The  Status  Register Bob  Sullivaa  50 

Book  Review:  Some  Common  BASIC  Programs  Jim  Butterfield,  52 

Multitask:  A  Realtime,  Multitasking  Operating 

System  Emulator Hal  Bredbenner,  54 

The  Apple  Gazette 62 

Plotting  Polor  Graphs  With  The  Apple  II Marvin  L.  DeJong,  62 

Disassembling  Machine  Language  Programs  Without 

Leaving  BASIC John  R.Vokeyond  H.Cem  Kaner,68 

Named  GOSUB  With  Voriable  Passing Mike  Smith,  69 

Ttie  Atari  Gazette 77 

INSIGHT:  Atari  Bit!  Wilkinson,  77 

P/M  Graphics  Made  Easy  T,  Sak  and  S.  Meier,  90 

Review:  Eastern  Front Edward  P,McMahon,94 

Odds  And  Ends:  Clearing  Memory  Charles  Brannon,  95 

OVERVIEW:  Textwizard 96 

Put  Graphics  Modes  1  And  2  At  The  Bottom  Of 

Your  Screen R.  Alan  Beike,  100 

Atari  PILOT  At  The  Helm.  Patricio  Tubbs,  104 

Atari  Listing  Conventions  107 

Moire  Magic  Leo  Cerruti,  112 

PutARoinbowlnYourAtari Fred  and  Doug  Tedsen,  114 

The  OSI  Gazette ^-jg 

A  Smoll  Operating  System:  OS65D,  The  Disk  Routines T.  R.  Berger,  118 

The  PET  Gazette ^28 

A  User-defined  Character  Editor P.  j.  Rovero,  128 

Marquee Mark  Bernstein,  135 

Disk  Disassembler  George  H.  Watson,  Jr.,  145 

Line  Input  For  The  PET  Robert  Lando,  154 

Measure  Time  Intervals  With  The  PET  Porollel  User  Port  . , .  Robert  MacNoughton,  160 

PET  Listing  Conventions  165 

Review:  Screen  Pro  Edward  K.  Crossman,  166 

VlC-20  Update 168 

Extended  VIC-20  Input  Devices:  Paddles  And  The 

Keyboard  Mike  Bassmon  and  Salomon  Lederman,  168 

Timekeeping  Keith  Schleiffer,  173 

An  Easy  Way  To  Relocate  VIC  Programs  On  Other 

Commodore  Computers  Greg  Sherwood  and  Ross  Sherwood,  176 

Review:  UMI  Amok  For  VIC Harvey  B.  Herman,  177 

Review:  UMI3K  VIC  Memory  Expansion  Harvey  B.  Herman,  178 

Alphobetizer Jim  Wilcox,  179 

VIC  Listing  Conventions  179 

CAPUTE 181 

New  Products 183 

Advertisers  Index   208 


•  •!  •• 


••••  L. 


6CP 


COMPUTE!  The  Journal  for  Progressive  Computing  (USPS:  5372M)  i.s 
published  12  times  e^ch  year  bv  Small  System  Services,  Inc..  P.O.  Box  54L16, 
GreeiisboR.,  NC  27403  USA.  I^lione:  (919)  275-9809.  Editorial  Offices  are 
located  at  625  Fulton  Street.  Greensboro,  NC  27403. 


iliimestic  Siibsi  I  iplions:  12  issues,  $20. (HI.  Scml  miI)m  lipiiiiti  nrcleisor  chriiiKi' 
(il^itklressd'.O,  F<iiii)  :5."i7<))  tu  Citriihiiiiiu  l)c()i.,  COMPUTE!  MaKii/iiif.  ."il"> 
.•\1>ImiII  Diivr.  KroniiKill,  l'.\  liKHLS.  Coriltolli-il  unuliilicm  ixjsl^if^f  [inid  liI 
(ircctvsbord.  N'C  274IK!  and  iiddiiioiial  iiKiiliiiH  olfucs,  Kiiiire  cllMl^■lU^  ui|iyriglit  (S,  19H2 
bv  Small  .Svsieiii  Services,  hit-  ,MI  Ri(flils  i  fserved.  ISSN  IH94-;i."»7X. 


TOLL  FREE 

Subscription 

Order  Line 

800-345-8112 

In  PA  800-662-2444 


COMPUTE 


;12.95 


COMPUTEi's 

:|RST  bOOK 


PET/CBM 


t^^kS^j 


Available  Now 
At  Your  Computer  Retailer 


$12,95 


f;'f?5^-5j?'^ 


Only  $12.95  plus  S2.00  shipping  and  handling*  Direct  orders  in  Ific  US  call  TOLL  FREE  800-345-81 12. 
In  Pennsylvania  call  800-662-2444.  MasterCard,  VISA,  check  or  money  order  payable  in  LIS  dollars 
accepted.  Send  to  COMPUTE!  Books,  5 1 5  Abbott  Drive,  Broomall,  PA  1 9008  USA. 


'Ouiside  US  ,«lf1  iA  00  .iirni.dl.  S.'^OO  Mirf.u:r  ni.iii 


/<:"-^ 


Ai.tn  \s  .MfYjivtfvnl  Mderitdrtt  0*  At.  ( 


J  CHM  .trc  tMflHnidcs  of  ComrMcxId.re  BuM^p^^  M-k  runt- y  rrir 


COMPUTE! 


Februory,  1981.  Issue  21 


Robert  C  Lock 
Publisher/Editor 


A  Major  Format  Change 

Now  that  we've  complclcd  the  merger  of  Honif  inid 
Eduailiiinal  COMPUTING!  and  RiTreatioiuil  (Umi- 
piilmg  im<>  COMPUTE!,  we're  eoiu'eiKraling  on 
revamping  llic  orsfani/ation  ol  (lie  inaga/inr  lo 
better  seiAC  you.  Beginning  in  March,  COMPUTE! 
will  have  two  clistinei  .sections  I'atlier  than  (he  .six  ii 
has  now .  The  first  section  will  he  called  "Home  and 
Educational  C'()\[Pl"iT\'(il.""  containing  applica- 
tions, inlorials.  columns,  and  reviews.  The-  sf( oiul 
section  of  the  magazine  will  become  "The  journal." 
carrvinga  mix  of  articles  for  intermediate  and 
achanced  users. 

We'll  continue  "New  Prodiicis,"  rt»f/ continue 
lo  provide  the  same  excellent  lesourw.-  and  appli- 
cations articles.  .\s  we  mo\e  into  the  new  year  \\\\U 
conlimiing  explosive  growth,  we're  sure  you  "old 
timers"  will  find  the  new  format  easier  to  use,  and 
\()ii  begiimers  to  the  world  of  personal  computing 
will  find  it  much  more  convenient.  Remcmbei ,  this 
starts  in  March  and,  as  alwavs.  we'd  appreciate 
vour  feedback  and  comments. 

The  Hardware  Wars: 

Late- breaking  and  Major  News 

Atari,  Inc.  has  just  slashed  the  suggested  retail 
price  of  the  .Atari  800  system  from  Si, 080. 00  to 
S899.00.  Commodore  is  currently  introducing  two 
new  machines  that  promise  to  be  quite  competitive 
in  the  personal  markel.  Shown  at  the  Consinner 
Electronics  Show  in  Las  \  egas  the  Inst  week  in 
January:  a  "game"  computer  with  plug-in  cartridges 
and  a  flat  kevboard  for  around  SI 50.00.  And  you 
can  add  a  B.\SIC  cartridge  to  learn  progranmiing. 
On  the  "high  "  end,  as  it  were,  and  also  from  Com- 
modore: a  64  K  color,  graphics  computer  (also  for 
TV  connection)  said  to  retail  lor  less  than  $(i()0.00. 
And  that's  with  the  64K  of  memory.  Look's  like 
1982  will  surelv  be  an  interesting  year!. 

And  As  The  Industry  Grows 

In  recent  editorials,  we've  commented  on  software 
protection,  copvrights,  the  right  ol' back-up,  and 


more.  We  welcome  vour  diouglits  on  these  and 
other  areas  of  inleresl  to  the  personal  couijHiter 
consumer.  A  letter  Irom  a  subscriber  laised  another 
question  that  we  haven't  considered  and  will  put 
on  the  1982  "connnenis  coming"  list.  I'll  raise  some 
of  his  points  here  and  solicit  vour  input. 

...I  just  resisted  purchasing  an  expensive 
piece  of  computer  software  for  which 
the  warrant V  reads  in  part; 

.\ll...((Hn])uter  pi'ograms  are 
clistrii)tited  on  an  "as  is"  basis 
without  warranty  of  any  kind. 
The  entire  risk  as  to  the  qualitv 
and  performance  ol  such  pro- 
grams is  with  the  purcha.ser. 
Should  the  ]5rogranis  prove  de- 
fective...the  |jiirchaser  and  not  the 
manufactiner..,assimies  the  entire 
cost  of  all  necessar\  ser\icing  or 
re[jair.  (I  he  company)  shall  have 
no  iial)ilit\  or  responsibility  to  a 
purchaser. 

This  is  not  mere  legal  jargon.  It's  the 
embodiment  of  a  business  philosophy 
which  seriousK  harms  all  of  us...  'fo  soft- 
ware lompanies  I  sa\ :  .A.ccepi  responsl- 
bilitv  for  \<)ur  products,  (iet  the  bugs  out 
Injiirr  \()U  sell  them.  Don't  try  to  sell  a  pro- 
gram debugged  b\  vour  customers  as  a 
"revised"  or  "improvetl"  product  ai 
additional  tost. 

To  software  t:onsumers  f  say:  If 
possible,  avoid  jModucts  for  which  there 
is  no  warrantv.  Don't  buy  on  faith, 
(-omplain  loudly  to  software  companies 
which  provide  no  warranty... 

Oiu'  reader  makes  a  series  of  interesting  points. 
While  I'm  no  lawvef.  I  would  wonder  if  the  portions 
ol  tlie  w;uratU)'  shown  abo\e  ate  realistic  in  enlorce- 
ability.  Would  .some  of  ytni  lawyer/readers  (  at f  to 
join  this  discussion  with  the  rest  of  us.'  I'll  look 
forward  lo  vour  comments.  © 


Professional  Software  Introduces 
POWER 

by  Brad  Tcmpleton 


-fT 


ADD  FOWL   TO  YOUR    ^so.®^ 
COJVIMODORE  COMPU1IR 


POWER  produces  a  dramatic  improvement  in  the 
ease  of  editing  BASIC  on  Commodore's  computers. 
POWER  is  a  programmer's  utility  package  (in  a  4K 
ROM)  that  contains  a  series  of  new  commands  and 
utilities  which  are  added  to  the  Screen  Editor  and  the 
BASIC  Interpreter.  Designed  for  the  CBM  BASIC 
user,  POWER  contains  special  editing,  programming, 
and  software  debugging  tools  not  found  in  any  other 
microcomputer  BASIC.  POWER  is  easy  to  use  and  is 
sold  complete  with  a  full  operator's  manual  written  by 
Jim  Butterfield. 

power's  special  keyboard  'instant  action'  features 
and  additional  commands  make  up  for,  and  go  beyond 
the  limitations  of  CBM  BASIC,  The  added  features 
include  auto  line  numbering,  tracing,  single  stepping 
through  programs,  line  renumbering,  and  definition 
of  keys  as  BASIC  keywords.  POWER  even  includes 

TM  POWER  ts  a  fiegistered  Trademaht  of  Prolassjonal  Software.  Inc. 


new  "stick-on"  keycap  labels.  The  cursor  movement 
keys  are  enhanced  by  the  addition  of  auto-repeat  and 
text  searching  functions  are  added  to  help  ease  pro- 
gram modification.  Cursor  UP  and  cursor  DOWN 
produce  previous  and  next  lines  of  source  code. 
COMPLETE  BASIC  program  listings  in  memory  can 
be  displayed  on  the  screen  and  scrolled  in  either  direc- 
tion. POWER  is  a  must  for  every  serious  CBM  user. 

Call  us  today,  for  the  name  of  the  Professional 
Software  dealer  nearest  you. 

Professional  Software  Inc. 

166  Crescent  Road 

Needham,  MA  02194 

Tel:  (617)  444-5224     Telex  #951579 


10 


COMPUTEI 


February,  1932.  Issue  21 


Staff  of  COMPUTi! 

Robert  C.  Lock,  Publisher/Editor 
Kathleen  Martlnek  Managing  Editor 
Ricliard  Mansfield,  Assistant  Editor 
Alice  S.  Wolfe,  Publisher's  Assistant 
Georgia  Papadopoulos,  Art  Director/ 

Production  Manager 
Horry  Bloir,  Director,  Advertising  Sales/ 

Promotion 
Terry  Cash,  Typesetting/Production 

Assistant 
De  Potter,  Production  Assistant 
Dai  Rees,  Production  Assistant 
Kote  Toyior,  Production  Assistant 
Charles  Brannon,  Editorial  Assistont 
Sonja  Whitesell,  Dealer  Coordinator 
Bonnie  Valentino,  Accounting  Coordinotor 
Fran  Lyons,  Circulation  Coordinator 


Associate  Editors 

Jim  Butterfield,  Toronto,  Canada 
Harvey  Herman,  Greensboro,  NC 


Contributing  Editors 

Marvin  DeJong,  Dept  of  Mathematics 

-Physics,  The  School  of  the  Ozarks 

Pt.  Lookout,  MD  65726 
Eric  Rehnke,  1067  Jadestone  Lane, 

Corona,  CA  91720 
David  Thronburg,  P,0,  Box  1317, 

Los  Altos,  CA  94022 
Bill  Wilkinson,  Optimized  Systems 

Software,  10379-C  Lonsdale,  Ave. 

Cupertino,  CA  95014 
Gene  Zumchok,  1700  Niagara  St., 

Buffalo,  NY  14207 


Subscrfption  Infomrialion 
[12  Issue  Year): 
COMPUTE!  Circulation  Dept. 
515  Abbott  Drive 
Broomall,  PA  19008  USA 

U.S.  $20.00 

Canada  S25.00  (U.S.  funds) 
Europe:  Surface  Subscription,  $25,00 
(U.S.  funds] 


TOLL  FREE 

Subscription 

Order  Line 

800-345-8112 

lnPAe00-6«2-2444 


Canadian  Retail  Dealers  should  contact: 
Micron  Distributing 
409  Queen  Street  West 
Toronto,  Ontario  M5V  2A5 
416-361-0690 


Advertising  Sales 

if  you're  in  Ofclahoma,  Texas  or  the 
Western  Stales,  we're  now  represented 
by  Phoebe  Thompson  and  Associates. 

Give  them  a  call  for  space  reservations, 
contract/insertion  information  or  ques- 
tions. You  can  reach  them  through  the 
following  offices: 

Northern  Colifornia,  Pacific  Northwest 
Rocky  Mountain  States,  Texas,  Oklahoma 
Phoebe  Thompson  and  Associates 
101  Church  Street,  Suite  13 
Los  Gates,  CA  95030 
408-354-5553 
PHOEBE  THOMPSON 

Southern  California,  Arizona,  New 

Mexico,  Nevada 

Phoet>e  Thompson  and  Associates 

P,0,  Box  700-462 
Redondo  Beach.  CA  90277 
JOANN  SULLIVAN 
213-378-0143 


If  you're  in  the  Ecst,  we're  now  repre- 
sented by  The  GIttelman  Company. 

You  can  reach  them  through  the 
following  offices: 

New  England,  New  York  State: 
The  Gittelman  Company 

Statler  Office  BuHding 

Suite  518 

20  Providence  Street 

Boston,  MA  02116 

617-451-0822 

JOAN  DONAHUE 

'The  Gittelman  Company 

Summit  Office  Centre 
7622  Summit  Avenue 
Fort  Washington,  PA  19034 
215-646-5700 
DOUG  JOHNSON 

New  York  City  Metro  Area, 
Mid-Atlantic  and  Southeastern  States: 
Local  Numbers: 
New  York  212-567-6717 
Atlanta  404-523-1252 


If  you're  in  the  Midwest,  we're  now 
represented  by  GB  &  Associates.  You 

can  reach  them  through  the  office  of: 

GB  &  Associates 

P,0,  Box  335 
Libertyville,  IL  60048 
312-362-1821 
GORDON  BENSON 


COMPUTI!  Home  Office  Contacts 

Advertising  Sales  Manager,  Horry  Blair 
Advertising/Production  Coordinator, 
Alices.  Wolfe 


Auttiors  of  manuscripts  warrant  thot  all  moterials  submitted  to  COMPUTEI  ore  original  nnateriols  with  full 
ownerstiip  rigtifs  resident  in  said  oufliors,  By  subrnitting  articles  to  COMPUTE!,  authors  acknowledge  that  such 
materials,  upon  acceptance  for  publication,  become  the  exciusive  property  of  Small  System  Services,  Inc. 
No  portion  of  this  mogozine  may  be  reproduced  in  any  form  without  written  pefnission  from  the  publisher. 
Entire  contents  copyright  c  1982.  Smoll  System  Services.  Inc.  Rights  to  programs  developed  ond  submitted  by 
outhors  are  explained  in  our  author  controct.  Unsolicited  materials  not  accepted  for  publication  in 
COMPUrEI  will  be  returned  it  author  provides  a  sell-addressed,  stornped  envelope.  Program  listings  should 
be  provided  in  printed  form  {new  ribbon)  as  well  os  machine  readable  form,  Arlicles  should  be  furnished  as 
typed  copy  (upper  and  lower  case,  pleose]  with  double  spacing  Each  page  of  >our  article  should  bear  the 
title  of  the  article,  date  and  name  of  the  outhor  COMPUTEi  assumes  no  liabtiity  to-  errors  in  articles  or 
advertisements.  Opinions  expressed  by  authors  are  not  necessarily  those  of  COMPUTEI 
PET  is  a  trademarl<  of  Commodore  Business  Machines,  Inc. 
Appie  is  a  trademark  of  Apple  Computer  Compony. 
ATARI  Is  a  trademork  of  Atori.  Inc.  I 


Address  ail  advertising  materials  to: 

625  Fulton  Street 
Greensl3oro,  NC  27403  USA 

Mailing  address:  COMPUTE! 

Post  Office  Box  5406 
Greensboro,  NC  27403  LJSA 

Telephone:  919-275-9809 


Small  System  Services,  Inc. 
publishes: 

COMPUTET 

The JourrtJ  fa  Proqre»»J*B  Can^Klttifi 

COMPUTE!  Books 


Robert  C.  Lock,  President 
W,  Jerry  Day,  Corporate 

Comptroller 
Kathleen  Martiriek,  Assistant 

To  The  President 
Ellen  Day,  Accounting  Manager 
Carol  Holmquist  Lock,  Research 

Assistant 


Corporate  offices  are  located 
at  625  Fulton  Street 
Greensboro,  NC  27403  USA 


COMPUTE! 
Subscription  Rates 

us  $20 

(one  yr,] 

$36 
(Kwoyrs.) 

$54 
(three  yrs.) 

Canada  and 

Foreign  Surtace  Mail  $25 

Air 

Europe,  US  Possessions  $38 

Middle  East,  Central 

America  and  North  Africa      $48 

South  America,  South 

Africa,  Far  East  and 

Australia  $88 


Coming  In  The 
IMarch  Issue 
of  COMPUTE!: 


Honne  Energy  Workbook- 
Third  In  The  Series 

Atari  Disk  Data 
Structure 

PET/CBM  Disk 
Checkout 

And  Much,  Much  More... 


M  time  Yottr  C(Mnputer 

stopped  just  pl^i^  games 


and  started  doing  some  work  around  the  house! 


f 


Let  Creative  Software's  home  programs  turn  your  ATARI®  or  VIC®  into 
a  really  useful  household  appliance^the  results  may  well  amaze  you! 


TITLE 

ATARI  400/800 

VIC 
(cassette  only) 

•  Household 
Finance 

34.95  cassette 
39.95  disk 

34.95 

•  Home 
Inventory 

19-95  cassette 
24.95  disk 

14.95 

•  Car  Costs 

19.95  cassette 
24.95  disk 

14.95 

CREATIVE 
SOFTWARE 


201  San  Antonio  Circle,  /e70 
Mountain  View,  CA  94040 
(415)  948-9595 


Ask  about  our  many  other  recreational  and  home  applications! 
TO  ORDER;  VISA.  MasterCard,  check  or  money  order  accepted.  II" 
charge,  plea.se  include  expiration  date  of  card.  Add  $1.50  lor  shipping  and 
handling.  CaliT.  residents  add  sales  ta.x. 


l^^iilHSIl 


pppkz 


The  Most  Exciting  Video 

Games  Available  Today 

At  The  Lowest  Prices 


5'/4"  Floppy  Disks 


ATARIA' 


David's  Midnight  Magic  Track  Atta 

Retail  S34.95     Now  $29.50  Retail  S29.95    Now  $24 

This  pinbiill  9iinie  by  Broderbund           .  |4K  Inn  Mratnig  .joid  (n.m  .1  s 

is  being  oKered  (or  Ihe  lirst  Simt.  „,„„  ^^,„|,  ,|,|s  a.inie  liy  BriKif 

Genetic  Drift    Retail  $29.95  Apple  Panic    Retail  $2S 

Now  $23.50   One  ol  Applf's  most  Now  $23.50  A  number  on. 

popular  games  by  Bnxterbund.  You  selltr  by  Broderbund. 

turn  unfriendly  lite  forms  .nit>  friendly .  R„ss|,i  Duck     Retail  $34,95 

Firebird      Retail   $29,95  JVp^,,  $29.50  firsl  1m,e  released 

Now  $24.50  All   new   by  Nasir.  far  any  machine  -    lectiuer  the  MX 

PiS9a,  the  fuiitless  firefighter,  batiles  Missile  tilans  hidden  liy  foreign  agents 

the  incredilile  Pirebird.  y.                    r>   .   -i  fnn  n 


Horizon  V     Retail  $34.95 
Now  $29.50  Iniercept  an  alie 


Gorgon     Retail  $39.95 
Now  $33.50    This  Number  I  seller 
just  re  released  by  Sitius  The  earth  has  just 


,    ,       ...    .i._    1      .     just  re  reieasca  Dy  airius  !  ne  eann  nas  usi 

(orce  before  Jhev  destroy  the  planet.    ^  ,.  '       jul...    i^-t. 

Nasir-s  lates,  grapte  mno.atlon.        ""'^"^  ^  '™'=™^^  ^"'^  '^'  ^-'"^  ^^^  '"''  ^^ 

Sneakers     Retail  $29,95  Space  Eggs    Retail  $29,95 

Now  $24.50  Endless  excitement       Now  $24.50  This  numlier  1  seller 

by  Sirius  stomping  Sneakers  and  i*  ^  f<-'<il  crack  up  from  Sirius, 

endless  other  creatures.  Epoch     Retail  $34.95 

Hadron    Retail  $34.95  Now  $29.50    A  Number  1    , 


Sy^"  Floppy  Disks 

Ghosthunter    Retail  $34.95    Now  $27.30 

2  pLiyer  k'ersKjn  <j(  (he  .iTCade  maze  game  with  niultipte 
.     .evels  nf  pLiy. 

r       Pool  1.5     Retail  $34.95     Now  $27.50   This 

jMijHiliii  Applf"  yiiiTLt'  tiiiw  .K'liil.ibh"  liir  use  witli  yutir  A^iri  800- 

Pathfinder      Retail  $39.95     Now  $31.50    Blasi 
your  way  throufjh  ^h^^  maite  lilled  with  nuLlearwjsie  rfnd  Tddioactive 
monsters  in  this  nt^ver- before  rekviied  giinit'  hy  GfhelEi  Software. 

Match  Racer     Retail  $29.95     Now  $23.50 

Cfht'lii  SofiWtirt*  has  you  niiitchsfiji  your  wits  iinci  *il>ilily  jgjiinsi 
yuur  racc'far  (ippoiictli  in  a  sh(jwHt>wn  uf  raciiiy  skill. 

Andromeda  2    Retail  $34,95    Now   $27.50 

First  lime  ever  for  any  machtne  by  Gebellf&ihwdre- Trapped 
i  inside  a  giganlic  fiuing  organism  you  must  find  your  way  out 
1  before  the  anlilxxlies  aef  you. 

The  Software  Conneclion 
—   5133  Vista  Del  Oro  Way 
Fair  Oaks,  CA  95628 


Now  $29.50  Battle  in  an      seller  from  Sinus  where  your  secrj 
asteroid  field  in  this  brand         weapon  is  the  fourth  dimension, 
new  game  by  Sirius.  Red  Alerl    Retail  $29.95 

Now  $24.50     Newest   Broderbund  release 


MAIL  ORDERS:  Stiid  clii,.k  or 
nmney  r.rder  Inr  ttilal  [iiircfuse  pm 
plus  Sl-StJ  lor  pitel.1*!*'  .Hid  firtj>dling 
C.iltfomio  residents  add  h  .Sak-^T.. 


diiirge  card  orders  m^iy  call 
19161  9!H-,1174.  Siiliiecl  to  sunk  on 
hand.  Prices  sutviect  lo  ch.iTiae. 


12 


COMPUTil 


FebruarvW82,  Issue  21 


Ask  The 
Readers 


Robert  Lock  Richard  Mansfield, 
And  Reoders 


Please  address  an\  queslions  or  answers  to:  Ask  The  Readers, 
COMPtlTEl  Magazine,  P.O.  Box  5406,  Greensboro,  NC  27403. 


Answers 

"This  is  in  response  to  Jerry  Stem's  question  in  the  August 
1 981  issue,  concerning  the  iLse  of  a  keypad  controller 
with  the  Atari  800.  All  oj  Atari's  controllers  are  usable 
with  all  of  their  computers,  video  game  included.  And  the 
keypad  controller  works  quite  well  for  repetetive  numerical 
data.  However,  it  is  not  limited  to  use  with  numbers.  The 
computers  response  to  the  keypad  controller  is  defined  by 
the  progiam  you  write  or  load  into  it.  Therefore  you  can 
use  it  to  output  any  one  of  twelve  .sytnbols  or  execute  any 
of  twelve  commands  or  any  combination  of  both  the  above. 

There  is  a  program  on  page  H-14  of  ike  Ataii 
Basic  Reference  Manual  that  will  get  you  started  with 
using  the  controller.  The  Operating  System  Manual 
goes  into  detail  on  how  il  works. 

Point  of  Interest:  In  [COMPUTE!  #  1 4]  his  excellent 
article,  'Atari  Tape  Techniques,'  Richard  Kru.se  mentions 
that  the  u.se  of  LIST  "C"/E\'TER  "C"  can  reduce  the  .size 
of  your  BASIC  program,  but  that  the  reason  for  this  is 
undocumented.  The  documentation  is  on  pages  2  and  3 
of  the  Basic  Reference  Manual,  under  the  section  titled 
'Variable  Name  Limit.'  "     Roberta  L.  Mevis 

"/  enjoyed  the  article  by  William  Taylor  in  COMPUTE! 
#17.  Apparently,  the  Stringy  Floppy  was  interfaced 
using  the  regular  cassette  SAVE  and  LOAD  routines. 
Your  reculers  might  be  interested  to  know  that  a  full 
ROM-based  operating  .system  and  plug- in  hardware 
board  exist  for  mating  the  Stringy  Floppy  with  the  OSI 
CI  P.  It  operates  at  7200  BA  UD,  is  available  at  poioer-up, 
and  resides  in  the  otheru>ise-unused  memoty  locations 
from  $E800-$EFFF.  Information  on  the  availability  of 
this  device  may  he  obtained  by  ivriting:  MSB  Electronics, 
Barre-Montpelier  Road,  Bane,  Vermont  05641 . " 
Philip  K.  Hooper 


[On  PETICBM  disks]  "The  ID  contained  in  a  track  and 
sector  is  written  once  only  -  luhen  the  disk  is  NEW/ 
HEADER-ed  or  created  with  a  BACKUP/DUPLICATE. 
It  can  never  be  written  again;  disk  writes  don't  touch  this 
special  area. 

If  you  wanted  to  write  a  non-standard  ID  into  a 
track-sector  header,  you'd  have  to  do  il  by  generating your 
own  NEW  formatting  routine.  This  is  not  an  easy  trick, 
since  it  involves  downloading  a  program  into  the  inner 
processor  of  the  disk.  It  would  ahfio.st  certainly  involve 
destroying  all  information  written  on  at  least  one  track  of 
the  disk."      Jim  Butterfield 

"In  response  to  Mr.  Keplinger's  commentaiy  on  Computer 
Assisted  Instruction  -  Worth  The  Effort?,  /  say  a  big 
positive  yes.  Going  on  four  years  without  a  promotion  in 
the  Air  Force,  I  purchased  the  Atari  400  computer.  I 
programmed  all  of  my  study  material  multiple  choice 
questions  and  answers  that  I  could  find  and  had  the 
computer  drill  me  day  after  day.  When  it  came  to  test  for 
promotion,  it  seemed  that  I  knew  all  the  answers.  A  month 
later,  I  was  notified  of  my  promotion .  Computer  assisted 
instruction  really  works."       Bob  Holsti 

"Re:  Question  from  J  ohn  Fry  about  files  in  OS65D  3.0 
COMPUTE!  #18. 

It  seems  that  although  the  program  example  is  com- 
plete, there  was  no  mention  of  the  creation  of  a  buffer. 
The  program  on  my  C4P  MF  was  completely  erased  as  I 
knew  it  would  be  when  I  typed  it  in  to  confirm  my  suspi- 
cions. Since  OSI  uses  the  beginning  oj  the  workspace  j or 
file  buffers,  the  file  is  brought  on  top  of  the  program  or 
portions  thereof  when  the  open  occurs. 

There  are  many  inordinate  constructions  in  OS65D, 
one  of  which  is  the  placement  of  the  buffers.  I  have  suc- 
cessfully edited  the  DOS  to  place  the  buffers  at  the  top  of 
memory.  The  advantage  is  that  I  can  mm>  ea.sily  write 
programs  with  sequential  and/or  random  files  and  need 
not  use  the  awkward  CHANCE  utility  to  create  the  buffers 
before  I  write  the  program.  (This  was  an  enormous  help 
to  me  as  virtually  80%  to  90%  of  the  programs  I  write 
use  random  files.)"       Ross  C.  Votaw 

Questions 

/  was  delighted  with  the  idea  of 'The  Unwedgc  -  Tape 
Append  and  Renumber'  by  David  Hook  in  the  Sept.  '81 
issue,  p.  103,  but  ran  into  problems  when  I  tried  il  out: 

1 .  The  formula  in  line  26:  Q\'S  =  MIDS  (STR(4  +  2* 
(QV=1)),2).  (What  can  the  QV  =  1  mean?] 

2.  [What  about  the  DATA  statement  in  line  116?]..." 
Joim  Sweeney 

Thanks  tor  the  kind  words,  John.  The  program 
was  completely  rechecked  and,  indeed,  the  final 
number  in  that  DATA  line  should  be  H259,  not 


-^., 


PATHFINDER 
Never  before  released,  a  super 
arcade-adventure  game  for 
Atari . . .  alone  in  a  vast 
transparent  maze 
inhabited  by  radtooctive 
monsters  and  nucleof 
waste,  you  must  blast 
ttie  waste  and  free 
ttve  maze  of 
mutont  monsters, 
By  Soiitaife  Group, 
requires  24K  Atari 
with  disk  drive. 


^3 


^mE^z. 


^    /  - 


MATCH  RACER 

Brand  new  for  the  Atori,  this  one  | 
or  two  player  game  tests  your 
driving  sitills  on  a  race  track 
filled  with  treacherous 
obstocles.  See  how  far 
you  can  get  before 
your  luck  and  skill  run  | 
out!  By  Solitaire 
Group,  requires 
16K  Atari  wtth  disk 
drive. 


:.,iW^.:: 


ANDROMEDA 

Introducing  a  spectacular. 

ofiginal  arcade-adventure  fori 

the  Atari ...  a  battle  in  inner/ 

space  , . .  you  must  invodei^ 

a  living  organism  and 

destroy  its  tissues  before  j 

its  antibodies  destroy 

you.  By  Solitaire 

Group,  requires 

16K  Atari  with  disk 

,  drive. 


nfe  rj^isiL,  ,_  t 


m 


i 


'I'?! 


COMPUTII 


February  1982.  Issue  21 


H25.  We  make  every  effort  to  assure  that  typos  do 
not  get  into  COMPUTE!,  and  we  feel  that  we  have 
succeeded  in  eliminating  most  of  the  causes.  How- 
ever, publishing  20  to  30  programs  each  month 
results  in  an  occasional  error.  We  attempt  to  an- 
nounce any  corrections  (or  useful,  <:tptional  pro- 
gram modifications)  the  following  month  in  our 
CAPUTE  section  in  the  back  of  the  magazine. 

As  to  the  meaning  of  QV=  1,  programmers 
sometimes  choose  to  use  relational  expressions.  Try 
this  in  immediate  mode:  ?  5  =  5.  Then  try:  ?  5  =  2. 
As  you  will  see,  if  the  proposed  equality  is  true,  the 
"value"  of  the  equality  is  -1.  If  false,  it's  zero. 

10  INPUT  X,Q 
20  Y  =  Y-(X  =  Q) 
30  ?Y:GOTO10 

Since  subtracting  a  negative  from  a  positive  is,  in 
fact,  "addition"  -  the  program  above  will  increase 
the  value  of  Y  wlienever  X  and  Q  are  e(|ual.  Y(5u 
could  achieve  the  same  result  with:  20  IF  X  =  Q 
THEN  Y  =  Y  +  1.  Strings  can  also  be  used  as 
expressions  and  evaluated  in  this  way.  Likewise, 
such  statements  as:  IF  NOT  X  THEN  PRINT  "-I" 
or  IF  X  THEN  PRINT  "0"  will  trigger  the  THEN 
action  on  -1  and  zero,  respectively. 

"/  know  that  there  are  screendump  programs  which  exist 
for  Atari  which  will  allow  the  contents  of  the  screen  to  be 
put  on  a  printer.  What  I  need  is  something  similar  to  this 
but  allowing  (he  screen  to  he  saved  to  tape  (or  in  DATA 
statements  written  by  the  program  itself)  .so  that  that 
screen  could  later  be  recreated  easily.  !  am  currently 
trying  to  write  a  graphics  type  of  Adventure  game  which 
■uses  a  redefined  character  set  and  recjuires  numerous 
POSITION  and  PRINT  commands  to  u.se  those  special 
characters  to  draw  some  fairly  complicated  floor  plans.  I 
am  nearly  at  the  tearing-out-my-hair  point  from  trying  to 
code  these  floorplans.  It  would  be  much  simpler  if  I  could 
draw  the  room,  using  the  edit  and  cursor  control  functions, 
and  then  .mve  screen  to  be  used  in  the  playing  of  the  game 
itself.  Does  such  a  pair  of  utilities  exi.Kt  or  is  anyone  cur- 
retitly  working  on  one?"       Michael  A.  Ivins 

"/  am  an  electronics  instructor  at  a  technical  .school  and  I 
am  interested  in  programming  my  own  PROMs.  We  have 
the  KIM-I  at  our  school  and  I  understand  that  they  can 
be  adapted  for  this  purpose.  [Please  advise  where  I  can 
obtain]  a  schematic  and/or  iiistructioru." 
Mark  Iskovitz 

"In  COMPUTE!  #  1 6  you  had  an  article  for  Applesoft  on 

loading  tape.  Well,  we  have  an  Atari  800,  and  my  husband 
IS  having  trouble  loading  and  unloading  tape,  he  keeps 
losing  his  prograin...  Could  you  publish  something  in 
rega rds  to  it?"       M rs ,  W .  P h i p ps 

Here  are  some  suggestions  and  precautions:  I.  Use 


the  more  expensive,  better  quality  tapes.  2.  Re- 
member to  issue  an  LPRINT  before  any  C.SAVE. 
3.  Ahvays  have  two  copies  (in  case  one  goes  bad).  4. 
Make  sure  that  llles  arc  saved  with  the  airl  of  the 
digital  counter.  Don't  overlap,  5.  When  loading, 
try  several  times  with  the  tape  positioned  slightly 
differently  each  time  (via  FFwrd).  6.  C'lean  ihc  tape 
heads  and  the  rubber  wheel  that  pulls  the  tape 
through  with  cleaning  solution  and  demagnetize 
the  heads  with  a  demagnetizer  (both  items  available 
at  electronics  stores).  7.  Don't  leave  the  Plav  (jr  Play 
and  Record  buttons  down  for  any  long  periods.  8. 
Experiment  with  alternative  wavs  to  SAVE  pro- 
grams: CSAVE/CLOAD,  SAVE"C"/LOAD"C:'.  or 
LIST"C"/ENTER"C;".  9.  If.  after  all  this,  you're 
still  experiencing  problems  —  chances  are  your 
heads  are  misaligned  or  something  else  is  electron- 
ically wrong.  Take  the  recorder  in  for  professional 
adjustment. 

"As  owner  of  a  CBM  8032,  ivith  4040  disk  drive  ami  an 
Epson  MX-80, 1  have  been  reading  current  and  bach 
issues  (^/COMPUTE!  ever  since  my  computer  dealer 
introduced  me  to  the  magazine  several  months  ago.  While 
I  hax'e  found  much  in  the  magazine  of  interest,  that 
interest  has  bordered  at  times  on  desperation  arising  out 
of  statements  such  as  'This  program  ivill  not  work  with  the 
new  ROM  or  with  the  80  column  screen.' 

How  about  a  program  that  will  reu<rite  any  other 
program  from  old  or  new  ROM  40-column  to  8()-colui/ni 
format,  including a.ssembly-language  programs?  While 
you  are  at  it,  wliy  not  a  program  that  will  translate  jrom 
CPIM  programs,  especially  the  hundreds  ofTRS-HO 
programs,  to  'PET  BASIC'.  I  am  sure  that  many  of  your 
readers  would  'ri.se  up  and  call  you  blessed.'  " 
Dr.  Harold  Peters 

Your  suggestion  is  an  excellent  one,  and  we  would 
welcome  programs  which  stand  between  various 
machines  and  translate  and  harmonize.  L'nforlu- 
nately,  writing  a  progiam  which  emulates  another 
computer  is  not  an  easv  task.  Some  work  has  been 
done  in  this  direction,  though.  In  COMPUTE!  #(>  is 
"Feed  Your  PET  Some  Applesoft."  Going  in  the 
other  direction,  in  COMPUTE!  #8  is  "Load  I'ET 
Programs  Into  The  Apple  II.  "  An  extraordinary 
program  which  snaps  the  80  column  CBM  screen 
into  40  colimins  appears  in  COMPUTE!  #12:  "Run- 
ning 40  C;olumn  Programs  On  A  CBM  8032." 
Also,  for  hand-translations,  sec  COMPUTE!  #l(i, 
"PET,  Apple,  Atari:  On  Speaking  Terms."  lime 
permitting,  we  translate  individual  programs, 
often  presenting  multiple  versions  of  programs 
appearing  in  (he  PE  T  Gazette.  In  addition,  we 
print  several  programs  each  month  (in  the  Appli- 
cations section  at  the  front  of  the  magazine)  wiili 
versions  for  both  Atari  and  Microsoft  B.XSICs.       © 


I 


Imagine  being  able  to  print  the  letter  "A" 
and  get  a  multi-color  space  ship.  Using  THE 
NEXT  STEP  and  a  minimum  of  programming 
effort,  you  can  do  it  in  no  time  at  all. 


THE  NEXT  STEP  contains  well-wrillen.  easy-to-use  documen- 
tation with  simple  BASIC  programming  examples  that  show 
you  how  THE  NEXT  STEP  can  help  develop  colorful  graphic 
displays.  Graphics  you  never  thought  possible  until  now, 

THE  NEXT  STEP  is  a  user  friendly,  menu  driven  graphics  tool 
kit  that  allows  you  to  create  new  character  sets  or  redefine 
characters  to  n:iake  shapes  for  use  with  your  basic  or  machine 
language  programs.  THE  NEXT  STEP  allows  you  to  save  these 
"new"  characters  on  disk  ior  future  use. 


THE  NEXT  STEP  is  perfect  for  use  on  sftapes  for  animation 
and  features  a  joystick  controlled  color  menu  to  make  your 
graphics  come  alive.  THE  NEXT  STEP  even  generates  its  own 
code  to  help  you  incorporate  new  characters  and  shapes  into 
your  programs. 

THE  NEXT  STEP  allows  you  to  see  your  shapes  as  you  make 
them.  Now  you  can  deierrnine  ahead  of  time  how  characters 
will  interact  with  one  another  when  cr€ating  shapes  for  Charac- 
ter Set  or  Player  Missile  Graphics. 


1 

I 
i 


i 


THE  NEXT  STEP  helps  you  to  mix  any  of  ATARI'S  14  graphics 
modes  in  the  same  display,  THE  NEXT  STEP  is  a  perfect 
graphics  utility  for  the  BASIC  or  machine  language  programmer- 
novice  and  professional  alike. 


THE  NEXT  STEP  leatures  full  joystick  control  for  ease-of-use 
and  quick  editing. 


THE  NEXT  STEP  runs  on  any  32K  ATARI  400/800  with  a 
disk  drive  and  is  available  ior  $39.95  at  your  local  computer 
store  or  order  direct  from    .... 


I 

VISA,  MASTERCARD,  CHECK,  C.O.D.  Add  $1.00  for  Shipping  || 

3G57S  MUDGE  RANCH  RDHD  •  CDilRSEGDLD,  CR  33614  •  209-583-6853  ^ 


M'UME'y*'""' 


Visa.  MasterCard.  Checks.  COD 


r  7~ 


fs3S&ami!iin~:&- 


Add  one  dollar  for  shipping. 


16 


COMPUTil 


February.  1982.  Issue  21 


Computers 
And  Society 

David  D.  Thornburg 

Innovision 

P.O.  Box  1317,  Los  Altos,  CA  94022 


On  Piracy  ... 

As  the  mist  cleared  we  could  see  our  goal  before 
us.  High  in  the  foothills  overlooking  the  San  Fran- 
cisco Bay,  the  opening  to  the  cave  was  unmarked  - 
except  for  the  power  lines  which  snaked  their  way 
into  the  cavern  through  a  crack  in  the  rock. 

"You  are  on  yoiu'  own  now,"  my  guide  said  as 
he  scurried  down  the  hill.  At  last  I  had  found 
the  home  of  the  famed  software  pirate,  Long  John 
Silicon. 

As  I  entered  the  cave,  I  asked  myself  why  an 
editor  of  a  prestigious  magazine  would  risk  his  life 
in  pursuit  of  a  story,  but  the  recent  lawsuit 
preventing  Long  John  Silicon  from  selling  his 
home  video  copy  of  Tooth  Fairy  was  too  exciting  to 
ignore. 

With  a  great  heave,  I  opened  the  door  and 
found  Long  John  sitting  at  a  keyboard,  ready  for 
our  interview. 

DT:  Long  John,  you  have  a  reputation  as  a  vicious 
software  pirate.  Tell  us  —  is  it  deserved? 

LJS:  Aye  matey!  I  am  the  meanest  software  pirate 
to  ply  the  57  keys.  Once  I  see  a  game  I  like,  it  is 
only  a  matter  of  time  (usually  months)  before  the 
game  is  up  and  running  on  the  computer  of  your 
choice. 

DT:  Wait  a  minute.  I'm  not  sure  I  understand 
what  you  mean.  I  thought  soflwaie  pirates  just 
made  carbon  copies  of  other  people's  software. 

LJS;  Copy  existing  programs?  Ha  Ha!  Oh  matey, 
you  must  be  kidding!  My  parrot  wouldn't  do  some- 
thing that  easy.  No,  what  I  do  is  the  true  pirate's 
craft.  I  slink  aroiuid  the  arcades  looking  for  new 
games.  When  I  first  saw  Tooth  Fairy  I  knew  that 
riches  were  at  hand. 

DT:  Once  you  thid  a  game  you  like,  how  do  you  go 
about  copying  it? 

LJS:    First.  I  s[)enl  manv  pieces  of  eight  playing 
Tooih  Fairy,  gaining  mastery  in  every  aspect  of  the 
game.  In  the  space  of  a  few  weeks  I  was  playing  the 
game  in  my  sleep.  Next  I  created  a  story  board  for 
the  game. 

DT:  Excu.se  me.  Long  John,  I'm  not  too  versed  in 


the  pirate's  craft.  Would  you  tell  our  readers  what 
a  story  board  is? 

LJS:  Of  course.  A  story  board  is  a  visual  map 
showing  the  play  of  the  game.  It  includes  pictures 
of  the  screen  and  so  on. 

DT:  That  sounds  like  a  lot  of  work  to  go  through 
before  writing  any  of  the  program. 

LJS:  Of  course  it  is.  Who  .said  piracy  is  easy  work? 
In  any  event,  once  the  story  board  is  finished  the 
real  work  begins.  One  just  doesn't  sit  down  and 
copy  a  game  without  worrying  about  display  reso- 
lution, color,  machine  speed,  game  controller 
options  -  ah,  the  stones  I  could  tell... 

D'F:   Yes,  well  I  am  sure  our  readers  would  be 
fascinated,  but  tell  us  more  about  the  game.  Is  it  an 
exact  copy  of  the  arcade  version? 

LJS:  The  same?  How  insulting!  I've  half  a  mind  to 
slit  you  from  your  index  register  to  your  stack!  No 
pirate  would  miss  the  chance  to  improve  on  a  game. 
To  start  with,  I  spent  about  as  much  time  copying 
Tooth  Fairy  as  its  creator's  spent  designing  it  in  the 
first  place.  Why  shouldn't  I  improve  the  game. 

DT:  Oh,  I  agree  with  that;  but  why  is  this  piracy 
then.  After  all,  people  whtj  write  love  stories  aren't 
being  sued  by  Shakespeare's  estate.  From  what  I 
can  see,  you  might  have  created  a  new  game. 

LJS:  No!  A  thousand  times,  no.  If  my  version  of 
Tooth  Fairy  was  new,  I  wouldn't  have  been  sued 
for  infringement  by  Ajax  Computer  Company 
would  I? 

DT:  I  guess  not.  Say,  yoin-  copy  of  Tooth  Fairy 
runs  on  the  Ajax  computer  doesn't  it? 

LJS:  Yes,  in  fact  it  has  helped  sell  their  computers. 
Most  of  the  local  computer  stores  used  to  use  my 
game  to  show  oil  the  Ajax's  power. 

DT:  Then  why  are  they  suing  you?  They  didn't 
write  the  original  software. 

LJS:  Yes,  that's  true;  but  they  did  buy  the  home 
video  rights  to  the  game,  so  I  guess  I  infringed  on 
their  copytight,  even  though  they  didn't  write  any 
of  the  original  program. 

DT:  Well,  I'll  bet  that  their  version  of  Tooth  Fairy 
is  a  real  knockout.  Now  that  your  program  is  illegal, 
I  assume  I  can  buy  theirs. 

LJS:   Oh  no!  First  of  all,  they  have  to  go  through  all 
the  work  I  did  to  get  the  game  to  run  on  their  com- 
puter. Their  version  is  at  least  six  months  awav. 

DT:  What  a  shame!  Why  didn't  they  just  license 
your  copy? 

LJS:  License  me!  A  pirate!  Shiver  me  disks.  Why 
would  they  do  that?  Of  course  I  asked  for  a  licen,se, 
but  they  insisted  on  having  the  job  done  over. 


Micro-Ed  is  EXPANDING! 


Send  for  free  educational  catalogs  f^ 


Specify:  Pet  •  Vic  •  TI  •  Apple  •  TRS-80 

color  computer 


you  can  telephone  us 

at  Micro-Ed,  Inc. 

612-926-2292  PO  Box  24156        Minneapolis,  MN  55424 


DT:  I'm  not  trying  to  downplay  the  devious  im- 
morality of  yoLir  crime,  but  I  am  still  having  a  hard 
time  thinking  of  your  work  as  piracy.  Tell  me,  are 
you  countersuing? 

LJS:  Aye,  a  countersuit  is  in  progress,  but  I  don't 
have  the  legal  resources  of  a  company  like  Giant 
Toys,  Inc. 

DT:  Oh  yes.  Giant  Toys  sells  a  hand-held  version 
of  Tooth  Fairy.  Is  Ajax  suing  them  too? 

LJS:  Not  yet.  Ajax  only  has  a  few  attorneys,  and 
they  can't  sue  everyone  at  once.  I'm  flattered  that 
they  picked  me  first,  even  if  I  have  to  give  up  the 
battle  when  my  money  rtms  out.  After  all,  even 
pirates  live  in  fear  of  their  lawyers, 

DT:  What  a  shame.  You  mean  that  you  might  lose 
because  you  can't  afford  the  fight? 

LJS:  Yes.  After  all,  if  Giant  was  sued,  the  case 
might  drag  on  for  years.  My  suit  will  probably  be 
mercifully  short.  My  days  as  a  pirate  are  nearing  an 
end. 

DT:  So  you  have  given  up  on  piracy  forever  then? 

LJS:  Not  exactly.  Just  last  night,  for  example,  I 
used  my  video  cassette  recorder  to  make  a  copy  of 
a  movie  that  was  broadcast  past  my  bedtime. 


DISK  DRIVE  WOES? 
PRINTER  INTERACTION? 
MEMORY  LOSS? 
ERRATIC  OPERATION? 

Don't  wvv  ^^  so 

Blame  The 
Software! 

Power  Line  Spikes.  Surges  &  p  ,  ^^  ^sa  705    ^^^^^     '^°'^ 

Hash  could  be  the  culprit! 

Floppies,  printers,  memory  &  processor  often  interact!  Our 
patented  ISOLATORS  eliminate  equipment  interaction  AND  curb 
damaging  Power  Line  Spikes,  Surges  and  Hash. 

•  ISOLATOR  (ISO-I)  3  filter  isolated  3-prong  sockets;  integral 
Surge/Spike  Suppression;  1875  W  Maximum  load.  1  KW  load  any 
socket ■  ■■  ■  •  ^  ■  •  ■  «62.95 

•  ISOLATOR  (ISO-2)  Z  filler  Isolated  3-prong  socket  banks;  (6 
sockets  total);  integral  Spike/Surge  Suppression;  1875  W  Max 
load,  1  KW  either  bank S62,95 

•  SUPER  ISOLATOR  (ISO-3),  similar  to  ISO-1  except  double 
filtering  &  Suppression $94.95 

•  ISOLATOR  (ISO-4),  similar  to  ISO-1  except  unit  has  6 
Indlvidualiy  filtered  sockets $106.95 

.  SUPER  ISOLATOR  (ISO-1 1)  Similar  to  lSO-2  except  double 
filtering  &  Suppression  .:.jf^?-?5 

•  CIRCUrT  BREAKER,  any  model  (add-CB) Add  $  8.00 

.  CKT  BRKWSWITCH/PILOT  (CBS) Add  S16.00 

AT  YOUR  Master-Card,  Visa,  American  Express 

DEALERS  Order  Toll  Free  1-800-225-4876 

(except  AK,  HI,  PR  &  Canada) 


/^^ Electronic  Specialists,  Inc. 

irt  South  Main  Street.  Nallct.  Mass.  0)760 

Technical  &  Non-800:  1-617-655-1532 


ANNOUNCING  TWO 
NEW  TERMINALS 

Smart*  Fast  •  Graphics  •  Matching  Modem  and  $295  Printer 

Neironics  announces  a  stale  ot  trie  sri 
breaKlhrouflh  In  lerminais.  now  «l  pr'c**  you 
Can  afford,  you  can  qo  on-tine  with  daia-bink 
at^ci  compuler  phone-lii^d  services  H's  all 
yours,  "eiectionjc  newspapers,"  educaiiorial 
seivtces.  Dow  Jof^es  slocK  reporia.  o^n^e*. 
recipes,  personal  cornpuling  with  any  ipvel 
language.  proQ^ann  eKChanges.  eieclronic  bul- 
letin boards  .      and  more  every  tJayUt 

Neuonics  ofler»  two  n^w  terminaia.  both 
Feature  a  full  &6  key/128  characiar  iyp«wrltar- 
style  keyt^aerd.  baud  titles  \o  19.3  kilobaud,  a 
rugo^d  steel  cabinet  and  power  supply.  The 
simplest  One.  FABTEHM-&4,  is  a  16  Nne  by  64  or  32  characlBr  per  line  unit,  witti  B  serial 
printer  porl  for  making  hard  ccpy  of  all  Jncaming  data,  and  optional  provlslonf  lor  block  and 
Special  charecTer  graphics  The  "amart '  varsicr,  SMARTERM-60.  features  elthi^r  24  line  Cy  BQ 
characters'  per  imeor  15  by  40  cna<aci«rs  per  line,  it  olfers  on-screen  ediiing  wiih  pageat  a- 
Irme  printing,  12.000  pixel  graphics,  line  graphics,  absolute  cursor  addressing,  underlining, 
reverse  video.  one-ha,lt  iniensiiy  and  much  rrore  . .  .  simply  plug  them  Inio  your  computer  or 
our  phone  modern  and  be  on-line  in$tantly.  Uas  your  TV  sal  (RF  modulator  required)  or  cur 
dalun  greenpriosphor  monitor  pictured  above.  For  hard  copy  jugl  add  our  matched  prinlar. 

Price  bfeakihroughfM  Own  the  FA&TERM-64,  a  complete  terminal  kit,  ready  to  plug  in  for 
iu5t  ST9996  or  order  the  SMARTERM-BG  kit  for  just  S299.95,  (both  available  wij-ed  and  tested.) 
Be  on-line  with  the  mlllion-dioller  cort^putera  and  data  services  today  ...  we  even  supply  Ihe 
necessary  subKcrlpllon  forms, 

More  good  r^ewa:  All  Ihe  components  In  our  terminals  are  avallabfe  separately  {see 
coupon).  $0  you  buy  only  what  you  rteed!!! 

FASTERM-U  .    ,  DISPLAY  FORMAT:  64  or  32  characters^line  by  !6  lines      .96  dispiayable 
ASCII  cnaraciara  (upper  &  lower  case) . . .  B  Daud  rates:  150.  3O0.  600.  1200.  2^00  4So6.  9600. 
19,  200,  (switch  set.) ...  LINE  OUTPUT:  RS232/C  or  20  ma  current  loop  - . .  VIDEO  OUTPUT:  IV 
P/P  jElA  HS-170) . . ,  CURSOR  MODES:  home  &  clear  screen,  erase  to  end  of  line,  erase  cursor 
line,  cufsor  up  &  down,  auto  cariiacB  return^iine  teed  at  end  ol  line  4  auto  scrollma  . . . 
REVERSE  VIDEO  .  .  .  BLINKING  CLmSOR  .  .  .  PARITY:  off,  evert  or  Odd     .  .  STOP  BITS:  1,  1.5, 
2    .  -  DATA  BITS  PER  CHARACTER:  5.  6.  7  or  6  -    -  CHARACTER  OUTPUT:  5  by  7  dol  matrix 
In  a  7  by  12  cell  . . .  PRINTER  OUTPUT:  prints  all  Incoming  data  ,  , .  IK  ON  BOARD  RAM  ,  ,  , 
2K  ON  BOARD  ROM  .  .  .  CRYSTAL  CONTflOLLEO  -  .  .  COMPLETE  WITH  POWER  SUPPLY    .  . 
OPTIONAL  GRAPHICS  MODE:  includes  34  Greeh  &  math  characters  plu&  30  Special  graphics 
characters        ASCII  ENCODED  KEVBOARD:  56  hey^JB  cfiaracters, 

SMAHTERM-M        DISPLAY  FORMAT  SO  Characters  by  24  Imes  or  40  characlers  Oy  16  'm«4 
12B  dispiavacile  ASCII  cnaracieis  (upper  &  lower  case]  S,  baud  rates:  110.  300.  60C.  1200.  24(X), 
4600.  9600,  T9.  200  ..  .  LINE  OUTPUT:  RS2a2/C  or  20  ma  current  loop  -  ,    VIDEO  OUTPUT:  1V 
pp  (EiA  RS-170)  -       EDITING  FEATURES:  insert/delete  line,  insert/deiete  character,  for- 
wardyback  lab        LINE  OR  PAGE  TRANSMIT  .  .  .  PAGE  PRINT  FUNCTION  ,  -  .  CURSOR  POSl- 
TlONiNG:  up.  down,  right,  leli,  plus  absolute  cursor  positioning  with  read  back        VISUAL 
ATTRIBUTES  underline,  blink,  reverse  video,  haif  intonsily.  &  bianH  .  . .  GRAPHICS:  12.000 
pixel  resolution  block  plus  line  graphics  .  - .  ON-SCREEN  PARITY  INDICATOR        PARITY:  off. 
even  or  odd        STOP  BITS:  llO  baud  2.  all  others  5  . .    CHAR-  OUTPUT;  7  by  1 1  character  in 
a  9  by  12  block        PRINTER  OUTPUT      .  60  OR  50  Hi  VERTICAL  REFRESH      -  BLINKING 
aLO(:K;  CURSOR    .  .  crystal  controlled  ,  ,.  2K  on  board  ram        ASCII  ENCODED 
KEYBOARD  56  keyn2a  character  . .  .  4K  ON  BOARD  ROM         COMPLETE  WITH  POWER 
SUPPLY 

TELEPHONE  MODEM  103  O/A  .  .  .  FULL  DUPLEX,  FCC  APPflOVEO  -  -  .  DATA  RATE.  300  baud 
. . .  INTERFACE:  flS232JC  and  TTY    . .  CONTROLS,  talk/data  switch  (no  need  lo  conneci  and 
disconnect  phone),  onainaleianswer  switch  on  rear  panel  ...  NO  POWER  SUPPLY  RE- 
QUIRED. 

ASCII  KEYBOARD  ASCII-3  ...  66  KEVmJS  CHARACTER  ASCII 
ENCODED    ,    UPPER  a  LOWER  CASE    .    FULLY  DEBOUNCED  . 
2  KEY  ROLLOVER        POS  OR  NEC  LOGIC  WITH  POS  STROBE  . 
REQUIRES  +  5  A    12V  DC  (SUPPLIED  FROM  VIDEO  BOARDS) 
PRINTER  COMET  I      .  SERIAL  1*0  TO  9S00  BAUD        SO 
CHARACTER  COLUMN  fn2  COMPRESSED)         10"  TRACTOR  FEED  ^ 

UPPER^LOWER  CASE  .  ,  INDUSTRY  STANDARD  RIBBONS  . 
4  CHARACTER  SIZES  _  _ .  9  BY  7  OCT  MATRIX  .  .  .  BI-DIRECTIONAL 
PRINTING 


Continental  U.S.A.  Creidit  Card  Buyers  Outside  Connecticut 

CALL  TOLL  FREE  800-243-7428 

To  Order  From  Conneoticul  Or  For  Tech.  Assist.  Call  (203)  354-9375 

NETRONICS  R&D  LTD.  D.pt. 

333  LUchliold  Road,  New  Mllford,  CT  06778 

Please  send  the  items  checked  tielow: 

C  COMPLETE  FASTERM*>  TERMINAL  (includes  FASTVID-64  video  board 
ASCti-3  keyboard,  steel  cabinet  arid  power  supply) ...  kit  S199.95  plus  S3  P&l 
. . .  wired  &  iBsied  $249.95  plus  S3  P&l  . . .  graphics  option:  add  119.95  to 
aach  ot  above  _      .,^.„„„    .^ 

T-  COMPLETE  SMARTERM-eO  TERMINAL  (includes  SMARTViO.80  video 
board,  ASCIi-3  keyboard,  steel  cabinet  and  power  supply) ...  kit  SZ99.95  plus 
J3  P&l  .  . .  wired  and  tested  $369.95  plus  S3  P&l 

□  FASTVlD-64  VIDEO  BOARD  (requires  +5  &  -12^  DC)  . . .  kit  $99.95  plus  $3 
P«,l  . . .  graptiics  option  add  $19.95  , . .  wired  &  tested  $129.95  plus  $3  P&l  . . . 
Qfaphlcs  option  add  $19.95 

a  SMARTVID.80  VIDEO  BOARD  (requires  +5  &  +/-12V  DC) , . ,  kit  $199,95 
plus  S3  P&l  .  . .  wired  &  tested  $249.95  olus  S3  P&l 

□  DELUXE  STEEL  TERMINAL  CABINET  . . .  $19.95  plus  $3  P&l 

D  ASCII.3  KEYBOARD  (requires  +5&  -12V0C) .  - .  kil  $69.95  plus  $3  P&l  . . . 

wired  and  tested  $89.95  plus  S3  P41 

D  POWER  SUPPLY  (powers  ASClt-3  keyboard  &  video  boards)  ,  -  -  kil  only 

$19.95  plus  $2  P&l 

D  ZENITH  VIDEO  MONITOR  (higt)  resolution  gteen  phosphor) . .    wired  & 

tested  $149.95  plus  $6  P&l 

□  TELEPHONE  MODEM  MODEL  103  O/A  . . .  wired  &  tested  $1B9.95  plus  S3 
P&l 

C  DOT  MATRIX  PRINTER  Comet  1  . . .  wired  &  tested  $299.95  plus  $10  P&l 
r  RF  MODULATOR  MOD  HF-I  ...  kit  only  $8.95  plus  $1  P&l 
L    3FT.25  LEAD  MODEMfTERMiNAL  OR  PRINTER/TERMINAL  CONNECTOR 
CABLE  .  . .  $14.95  ea  plus  $2  P&l 

For  Canadian  orders,  double  the  postage  .  Conn.  res.  add  sales  tax. 

Total  Enclosed  S_ 
D  Personal  Check 
n  VISA 
Acct.  No. 


n  Cashier's  Check/Money  Order 

n  MasterCard   (Bank    No.  _ ) 

Exp.  Date. 


Signature  

Print     Name. 

Address 

City  


State 


Zip 


February.  1982.  Issue  21 


COMPUTE! 


19 


The  Beginner's  Page 

Translating 
Equations 

Richard  Mansfield 
Assistant  Editor 


Computers  are  excellent  teachers.  They  have  infi- 
nite patience;  provide  instant  pass-fail  corrections 
of  your  efforts;  permit  you  to  work  at  your  own 
speed  on  topics  of  your  choice;  and  they  don't  (as 
yet)  become  sarcastic  when  you  blunder. 

Many  people,  myself  included,  decided  long 
ago  that  math  was  not  their  forte.  This  decision  is 
usually  made  at  age  fifteen  or  thereabout  and 
follows  a  series  of  mishaps  in  the  educational  system. 
Algebra  is  often  the  final  blow. 

Computers  cine  this  math  phobia  rather  quickly. 
The  machine  does  ail  of  the  tiresome  calculations 
for  you.  You  are  free  to  float  above  and  observe 
relationships,  discover  patterns,  even  construct 
visual  analogs  where  you  can  watch  the  numbers 
transform  on  the  screen. 

Algebraic  Equations,  BASIC  Assignments 

After  you  get  over  the  initial  surprise  that,  in 
BASIC,  A  =  A  -I- 1  makes  perfect  .sense  -  you  will 
find  that  the  meaning  of  variable  becomes  quite 
clear.  A  variai)le  is  simply  a  "name"  written  on  a 
"box."  You  might  have  a  box  in  your  house  marked 
"BILLS."  Each  month  you  pay  all  the  bills  and  the 
box  is  empty  (BILLS  =  0).  Then,  when  each  bill 
comes  in,  you  put  it  in  the  box  (BILLS  =  BILLS -t-  1). 
This  is  not  an  algebraic  equation,  it  is  an  assifrm/ienl 
of  a  certain  number  (BILLS -I- 1)  to  the  variable 
BILLS. 

In  algebra,  an  equation  is  expected  to  balance: 
whatever  is  on  the  left  side  of  the  equals  sign  is 
presumed  to  be  equal  to  the  right  side.  In  BASIC, 
the  variable  on  the  left  side  is  being  defined  by  what- 
ever is  on  the  right  side.  In  earlier  versions  of 
BASIC,  you  had  to  type:  LET  BILLS  =  BILLS  +  1 
to  show  that  you  were  assigning  a  new  value  to 
BILLS,  not  staling  an  equality.  One  other  thing: 
computers  allow  you  to  use  meaningful,  easily 
recognized  variable  names  such  as  BILLS,  or 
INTEREST,  or  DOLLARS.  This,  too,  can  be  an 
advantage  over  the  traditional  single-letter  variable 
names  of  algebra. 

In  any  case,  much  useful  math  becomes  clear 
after  you  work  a  while  on  your  computer.  For 
example,  let's  put  this  on  our  computer  (to  see  how 


easy  it  really  is): 

F  =  D(1+I/C)'^*^ 

or 
FINALAMOUNT  =  DOLLARS(  1  +  INTEREST/ 

This  formula  will  let  you  know  how^  much 
money  you'll  end  up  with  after  making  an  invest- 
ment. It  can  also  tell  you  how  much  your  house  will 
be  worth  if  it  is  going  up  in  value  a  certain  amount 
each  year  or  show  the  effects  of  inflation.  It's  a 
handy  formula,  but  to  the  "non-mathematical"  it 
looks  forbidding.  On  the  computer,  it's  a  snap.  Just 
use  INPUT  statements  to  ask  for  each  of  the  vari- 
ables and  then,  (in  line  100),  duplicate  the  formula 
using  BASIC  symbols: 

10  PRINT  "WHAT  IS  THE  ORIGINAL  AMOUNT  IN 

VESTED"; 
20  INPUT  DOLLARS 
30  PBIMT  "HOW  MANY  YEARS  BEFORE  YOU  CASH 

IN  THE  INVESTMENT"; 
40  INPUT  YEARS 
5  0  PRINT  "WHAT  IS  THE  ANNUAL  INTEREST  RA 

TE"; 
60  INPUT  ITEREST 
70  PRINT  "HOW  MANY  TIMES  PER  YEAR  IS  IT  " 

COMPOUNDED"; 
80  INPUT  COMPOUNDING 

90  ITEREST  =  ITEREST/COMPOUNDING/100:RE« 
MAKE  ITEREST  INTO  A  DECIMAL  FRA 
CTION 
100  FINALAMOUNT  =  DOLLARS  *  (1  +  ITEREST) 

t  (COMPOUNDING  *  YEARS) 
110  PRINT  "AT  THE  END  OF  ";  YEARS;  "YEARS 
YOU  WILL  HAVE  S";  FINALAMOUNT 

Notice  that  we  spell  it  iteresi  to  avoid  using  one 
of  BASIC'S  special,  reserved  words  INT.  It  is  also 
necessary  to  enclcjse  compounding  multiplied  by  years 
in  parentheses  to  show  that  this  is  to  be  calculated 
before  the  other  part  is  raised  to  a  power.  The 
order  in  which  calculations  are  performed  is,  of 
course,  quite  iinportant  and  you  should  familiarize 
yourself  with  what  your  computer's  manual  in- 
structs on  this  subject.  When  in  doubt,  use  paren- 
theses —  they  will  always  cause  whatever  is  within 
them  to  be  figured  first. 

The  Universal  Rounding  Engine 

Programs  can  often  be  refined,  customized,  and 
made  to  perform  new  functions  with  surprisingly 
little  effort.  This  same  program  could  include  a 
function  to  round  oiT  the  finalamouut  to  the  nearest 
penny  by  adding  this  line: 

105  FINALAMOUNT  =  INT(FINALAMOUNT*  100 

+  .5)/100 

What  would  this  Universal  Rounding  Engine 
do  if  you  changed  the  two  I  CD's  to  IOOO's...or  lO's? 
We  can  also  easily  adjust  the  program  to  predict 
how  much  your  house  will  be  worth  in  ten  years, 
given  a  rise  in  value  of,  say,  six  percent  per  year. 
The  math  stays  the  same,  all  we  need  to  do  is  change 
xhc  prompts  (the  questions  the  computer  asks).  Line 
10  should  read:  "HOW  MUCH  IS  YOUR  HOUSE 


20 


COMPUTE! 


Februofy,  1982  Issue  21 


WORTH  NOW?"  Line  30:  "HOW  MANY  YEARS 
DO  YOU  WANT  TO  PROJECT?"  Line  50:  "HOW 
MUCH  IS  IT  INCREASING  IN  VALUE  EACH 
YEAR?"  Line  70:  COMPOUNDING  =  L  In  line 
1 10,  change  "YOU  WILL  HAVE  '  to  "YOUR 
HOUSE  WILL  BE  W^ORTH." 

To  work  with  inflation  projections,  make  the 
following  replacements: 

10    "WHATISTHE  COST  OF  THE  ITEM  TODAY"; 
50    "WHAT  IS  THE  ANNUAL  INFLATION  RATE"; 
70    COMPOUNDING^  I 
110  [change  YOU  WILL  HAVE  to:  IT  WILL  COST] 

When  creating  such  useful  variations  to  simple 
programs,  you  are,  at  the  same  time,  learning  new 
things  about  mathematical  relationships.  It's  fini 
and  therefore  painless.  As  an  experiment  with  the 
Inflation  version  of  this  program,  try  adding: 
5  THISYEAR  =  1982  so  the  computer  will  know 
what  year  it  is.  Then,  using  the  information 
gathered  in  line  30,  have  the  computer  give  its 
answer  (in  line  1 10)  in  the  form:  BY  THE  YEAR 
1985  IT  WILL  COST  $(whatever). 

All  of  this  is  worlds  away  from  that  algebra 
class  where  some  of  us  mistakenly  decided  tliat 
mathematics,  when  it  wasn't  impossibly  obscure, 
was  tedious.  By  pushing  and  shaping  programs, 
you  can  see  and  feel  numbers,  their  interactions, 
their  bcaiuy.  © 


r^^r  Having  trouble 

<>^    learning  to  use 

your  computer? 

'Reference  manuals  don't  teach.  Most  BASIC 
texts  don't  cover  specific  personal  computers. 

TIS  solves  these  problems 

with  step-by-step  books 

tailored  for  your  machine. 

For  PET/CBM 

Understanding  Your  PET/CBM $16.95 

Vol  1:  Basic  Programming 

PET  Graphics $  6.95 

For  OSI  CIP/C4P 

Understanding  Your  CI  P/C4P $  9.95 

A  Workbooit  of  BASIC  Exercises 

For  VIC 

Understanding  Your  VIC $13.95 

Vol.  1:  Basic  Programming 

Money  fiach  Guarantee.  VISA/MC  accepted- 
All  prices  Include  UPS  or  ist  Class  postage 

TIS  INC 

■  /     Pi  g 

Total  Information  Services,  Inc.     (    f  ^mg:  ' 
Box  921,  Dept.  C  \  ^-31^ ' 

Los  Alamos,  NM  87544  7        1] 


LETTER  QUALITY  WORD  PROCESSOR  PRINTER/TYPEWRITER 

FOR  APPLE,  ATARI,  COMMODORE,  NEC,  OSBORNE  1.  TRS  80  and  others 


OLYMP1AES100/101 

■  92  character  electronic 

keyboard 

•  8  character  buffer  memory 

■  Dual  pitch.  10  and  12 

■  17.5C.P.S. 

•  All  settings  from  keyboard 

•  Auto,  correction 

•  Daisy  iype  print  mectianism 

•  Cartridge  ribbons 

•  14  1/8  inches  writing  line 

•  t400  dealers  nationwide 


REN  TEC  ES 

'  Installation  in  15  minutes 
using  existing  ES100/101 
cables 

•  Ct^OS  logic  for  minimal 

drain  on  ES100  power 
supply 
>  Hi  or  low  true  status  bits 

•  Accepts  RS232  serial  with 

7  crystal  controlled  Baud 
rates 
■  Accepts  Centronics  parallel 
interface 

•  Selectable  auto,  line  feed 


RE^ffllSSflNEE 

TEGtiNQLQGY 

GQRPORnTIQN 

3347  VINCENT  ROAD 

PLEASANT  HILL,  CALIFORNIA 94523 

(415)930-7707 


§1 495. 00*ES100  TYPEWRITER  &  INTERFACE 

***** 

NEC  Dot  Matrix  Printer 

100  CPS 

Bidirectional  printing 
Friction  and  tractor  teed 
Parallel  Interface 
Single  ribbon  cartridge 


S295.00  INTERFACE 
Sug.  Retail 

795.00 


NEC  Monitors 

12"  Green  Screen 

12"  RGB  Color 

12"  Composite  Video 

ATARI  10-Key  Accounting  Pad 
DEALER  INQUIRIES  WELCOME 


285.00 

1095.00 

430.00 

1 24.95 


r  ~  TAKE  ADVANTAGE  OF    "  •■ 
"    YOUR  PERSONAL  COMPUTER'S    " 

17  FOR 
■^     FUN 


AND 
PROnT! 

Check  this  list  of  LATEST,  EXCITING 
COMPUTER  PUBLICATIONS  &  Order 
Now!  These  FIRST  Editions  are  in  Lim- 
ited Supply . . .  Enjoy  the  convenience  of 
ARM-CHAIR  SHOPPING  BY  MAIL!  All 
Handling  and  Postage  included  in  prices. 

D  PLAY  THE  STOCK  &  BOND  MARKETS  WITH 

YOUR  PERSONAL COMPUTEHINewOne-of-a-kind 
3QS  page  Illustrated  Source  Book  can  teach  vou  tiow 
tousecompuiers  m  the  Investment  Fiel<l  ForfSovice 
&  Advanced  computer  hobb/ists  who  want  MORE 
fromttieirmactimesandmakemoney'Stiowshowlo 
get  started  in  Stock  &  Bond  Markets  PLUS  how  to 
use  your  computer  as  a  data  source  for  determining 
profitable  stock  selections,  buy-sell  decisions,  mar- 
ket evaluations  &  a  chance  to  learn  principles  of 
investing.  Order  #T12S1  @S1175  Delivered 

n  THE  NEWt  "READY-TO-RUN  ■  HOME  COMPUT- 
ERIST  67  ALL  PURPOSE  BASIC  PROGRAMSI  In 

this  latest  complete  Idea  programming  book  with  132 
pages.  73  illustrations.  67  programs  for  home,  busi- 
ness, education,  graphics,  games.  Everything  you 
need  to  play  latest  computer  games,  take  care  of 
housenold.  business  record  keeping,  fun  experh 
ments  with  graphic  forms,  Vou  can  offer  your  child- 
ren a  new  educational  challenge  with  this  Gufde  for 
any  computer  with  Basic  &  4k  memory'  Highly 
recommended.  Order  *T1195  @  S8.95  Delivered 


C^ 


FREE! 

Htvt  CaiJtOQ!  Ortt  101  Hum  Tntn 
Hnbby  A  Technical  Boo'ti.-  PocuUi 
pniri'mir>i)  Suri|«cti  witn  rtcn  ord«t 
OR  &#nd  3  lUmps.  nam*,  idd'm  io' 
rOur  FREE  Copy' 


D  HEBE'S  MOBE!  TESTED  "BEADY-TO-RUN"  34 
FUN  GAME  PROGRAMS  IN  BASIC!  Discover  Ihe 
Furside"  q(  your  computers  personality!  A  com- 
plele  collection  of  Games.  Gags,  Brgin  Teasers  & 
some  "Non-Games"  that  make  learning  Fun  for  ihe 
whole  family.  EASY-TO-READ-AND-UNDERSTAND 
Format  wtlh  41  Illustrations,  224  pages  ot  instruc- 
tions that  will  have  you  writing  poetry,  composing 
songs,  and  a  LOT  MORE!  Order  ttT^22B  @  S9-75 
Delivered 

DTHIS  IS  IT!  THE  NEW  GIANT  BOOK  OF  COMPU- 
TER SOFTWARE!  JUST  OFF  THE  PRESS  with  Hun- 
dreds ot  Practical.  Proven  Programming  Ideas  for 
the  Home  Compuierist  who  wants  MORE  frorir\  his 
machine  than  Commercially,  Pre-Packaged  Software 
Can  Otfer!  The  Perfect  Computer  Companion  for 
every  beginning  or  advanced  hobbyist  A  Big  504 
pages  plus  262  illustrations  of  "How-To"s"  forcreat- 
ing  every  kind  of  program  you  might  want  &  to  do 
exactly  what  you  want  them  lo  do!  Order  #T1J&9  @ 
S15.75  Delivered, 

Money-Bactc  Guarante«  *  Handling^  Poilage included 
A     .Vifl  _^    Cnech  Hems  -  Clip  Ad  -  Qfl 


eT 


Order  by  NUMBER 

Enclose  Check.  M.O.  or  Charge 
D  Visa  D  MasterCard  # 

Send  To: 

Address 

City 


Slata_ 


.  Zip_ 


SEND  ORDERS  TO  CoHsultors  Infl. 
Box  6589-TC  -234  Columbine  St. 
I  Mi  ■  Denver,  CO  80206  h  h 


MICROGEAMS 

EDUCATIONAL 

SOFTWARE 


THE  HEART 

OF  YOUR 

CLASSROOM 

COMPUTER 


Expect  more 
from  your  PET". . . 


PET  is  a  registered  trademark  of  Commodore  Business  Mactiines. 


MICROGRAMS 


INCORPORATED 

P.O.  BOX  21 46.  LOVES  PARK,  IL  61 130 
PHONE  81  5/965-2464 


\~\    Pfease  send  me  a  free 
K-8  catalog. 


NAME 


[~]   Please  send  me  a  sample 
program  and  a  free  K-8 
catalog.  I  have  enclosed 
$2.00  for  postage  and 
handling. 


ADDRESS 
CITY  


STATE 


ZIP 


25 


COMPUTEI 


February.  1982,  Issue  21 


Guest  Commentary 

Hidden  Costs 
Of  Computer 
Technology 

Croig  Brod 

President,  Technostress  International,  Inc 


During  the  I970's  most  banks  compuierized  their 
operations.  Ai  one  C.alifornia  bank,  a  team  was 
assigned  to  develop  a  program  lo  pay  savers  their 
interest  automatically  on  the  first  of  each  month. 
The  task  was  completed  to  everyone's  apparent 
satisfaction  and  most  members  of" the  team  were 
reassigned  to  new  projects.  The  day  before  the 
first  aulomalic  payments  were  to  be  disbursed,  due 
to  a  fluke  -  a  favored  customer  being  handed  bis 
computerized  check  a  day  early  —  il  was  discovered 
tliat  the  liank  had  o\erpaid  everybody  as  much  as 
double  the  interest  due  them.  At  6:00  P.M.  the 
team's  remaining  analyst  was  called  in.  The  project 
manager  came.  His  manager  came.  The  vice  presi- 
dent came.  An  esliniaied  eight  to  ten  million  dollars 
in  bank  funds  were  on  the  line,  to  be  disbursed 
when  the  doors  opened  For  business  the  next 
morning.  Could  the  analysi  find  the  Haw  in  iiis 
team's  program?  C>outd  he  develop  an  algorithm  to 
withdraw  the  appro))riatc  amount  ol'overpavmenl 
from  each  of  the  savers?  I'liis  analyst  was  a  prime 
candidate  for,  if  not  the  victim  of,  technoslresi. 

Exactitude,  Repeatability,  Detail 

tJomputer  iecbnolog\  has  become  a  fact  of  organi- 
zational life  and  lias  brought  with  it  new  values  and 
new  costs  for  those  within  the  organization.  Exacti- 
tude, repeatahilitv,  and  close  attention  to  detail  are 
the  hallmarks  of  everyday  o]jeralions.  Ciomputer 
technology  promotes  formal  relations  between 
people,  their  machines,  and  their  einiroinnent. 

The  new  tecluujlogy  is  qualitatively  different 
frtMii  the  old.  Compared  to  a  computer  information 
syslem,  a  telephone  or  xerox  machine  were  simple 
communication  devices  whose  use  recjuired  a  min- 
imum of  quiet  and  concentration  and  whose  users 
had  a  great  deal  of  latitude.  The  computer,  on  the 
other  hand,  requires  a  specific  response  lime  from 
the  user  (turned  operator). 

The  recoifling  of  information  anfl  the  retrieval 
of  data  within  the  language  of  the  [jrogram  both 
place  constraints  on  the  operator,  who  has  become 
machine-dependent  and  works  in  a  captive  envir- 


onment. Control  over  sound,  lighting,  and  work 
flow  is  important  for  maximum  concentration  and 


'Computer  technology  often 

reverses  the  relationship 

between  age,  experience, 

and  competence  at  work." 


effective  management  of  data.  While  assembly-line 
work,  or  even  typing,  are  sometimes  grueling  types 
of  work  requiring  attention  to  detail,  the  demands 
on  the  computer  operator  are  unlike  those  hereto- 
fore know'n  in  the  workplace. 

Claptivc  enviroimicnis  and  machine-dependent 
people  are  indications  of  iiew  forms  of  Organiza- 
tional life,  and  one  result  is  technostress:  the  condi- 
tion resulting  from  the  inability  of  a  person  or 
organization  to  cope  with  the  demands  created  by 
the  tjperation  and  maintenance  of  computer  tech- 
nology. It  occurs  where  necessary  technological 
stress  (such  as  response  to  work  changes)  is  trans- 
lated into  utuiece.s.sarv  human  strain.  There  are 
examples  of  technostress  at  all  levels. 

Age,  Experience  And  Competence:  A  Reversed 
Relationship 

Computer  technology  often  reverses  the  relation- 
ship between  age.  experience,  and  competence  at 
work.  Unlike  managers  of  the  past  who  passed  tips 
on  to  new  emplovees  on  how  to  "kick  the  ditto 
machine"  to  make  it  work,  their  \ears  of  experience 
have  often  merely  accumulated  outdated  knowl- 
edge in  today's  managers.  And  they  are  usually  at  a 
disadvantage  to  \oung  recruits  who  command  a 
great  deal  of  recent  technical  knowhow. 

I'odav's  project  manager  has  no  reliable  wav 
to  measure  productivity,  f he  manager  functions  as 
a  go-between,  taiking  to  the  system  user  -  say  the 
department  of  a  bank  that  wishes  interest  payments 
computerized  —  and  then  schedules  it,  deciding 
whether  il  should  take  six  people  three  months, 
four  peo])le  a  vear,  or  whatever. 

lo  most  programmers,  such  schedules  are  a 
joke:  "You  could  throw  darts  at  a  board  and  do  as 
well,"  is  often  heard.  One  told  recently  of  a  project' 
scheduled  for  three  months  and  which  came  in  at 
two  and  a  half,  earning  the  group  praise;  yet  it 
couki  have  been  done  in  three  weeks  and.  that  the 
gr(jiqj  dallied,  constituted  a  mini-revolt.  \o  matter; 
as  long  as  the  projects  come  in  ahead  of  arbitrary 
schedules,  managers  are  happy.  Able  to  measure 
only  results  and  not  understanding  the  work  well 
enough  to  gauge  productivity,  many  of  today's 
managers  who  have  not  come  up  through  the 


^^nUiy^^B 


Rocket  Raiders 


Our  High  Quality  Software  Is  More  Than  A 
Stroke  Of  Genius...  It's  A  Work  Of  Art. 


DPI*  EDITOR:  by  Denris  Zander  (Atari,  16K) 

Create  your  own  fast  action  graphics  game  (or  the 
Atari  4CiO  or  800  using  its  player  missile  graphics  fea- 
tures. By  using  player  data  stored  as  strings,  players  can 
be  moved  or  changed  (lor  animation)  at  machine  Ian 
guage  speed-  All  this  is  done  with  string  variables 
[P0$(Y)=SHIP4).  This  program  is  designed  to  permit 
creation  ot  up  to  4  players  on  the  screen,  store  them  as 
string  data  and  then  immediately  try  them  out  in  the 
demo  game  included  in  the  program  Instructions  tor 
use  in  your  own  game  are  included  PM  EDITOR  was 
used  to  create  the  animated  characters  inAttTWORX 
RINGS  OF  THE  EMPIRE  andENCOUNTER  AT  OUESTAH  IV. 
PRICE  $29.95  cassette  $33.95  diskette 

□  ROCKET  RAIDERS  bv  Richara  Petersen   (Atari  24K) 
Defend  your  asteroid  base  against  pulsar  bombs,  roc 

kets,  lasers,  and  the  dreaded  'stealth  saucer"  as  aliens 
attempt  to  penetrate  your  protective  force  field  Precise 
target  sighting  allows  you  to  fire  at  tfie  enemy  using  mag 
netic  impulse  missiles  to  help  protect  your  colony  and 
Its  vital  structures 
PRICE  ,  $19.95 cassette  $23.95  diskette 

0  INTRUDER  ALERT!  by  Dennis  Zander  (Atari.  16K) 

This  is  a  fast  paced  action  game  in  which  you  must 
escape  from  the  "'Dreadstar'  with  the  secret  plans- 
The  droids  are  after  you  and  you  must  find  and  enter 
your  ship  in  order  to  escape  If  you  fail,  the  rebellion 
IS  doomed   PRICE.      $16.95casserte  $2a.95diskette 

O  THE  RINGS  OF  THE  EMPIRE:  by  Dennis  Zander 

(Atari  16Kj 
The  Empire  has  developed  a  series  of  battle  stations 
protected  by  one  or  more  rings  of  energy  You  must  des 
troy  these  weapons  by  attacking  them  in  your  Ywing 
fighter  armed  with  Zydon  torpedoes.  Each  lime  you 
blast  through  the  rings  and  destroy  the  station,  the 
Empire  develops  a  new  station  with  more  protective  rings 
PRICE  $16.9Scassette$2<}.95diske(te 

1:1  FOREST  FIREI:  by  Richard  Petersen  (Atari,24K) 

Using  ejcelleni  color  graphics,  your  Atari  is  turned  in 
to  a  fire  scanner  to  help  you  direct  operations  to  contain 
a  forest  fire.  Vou  must  compensate  for  changes  in  wind, 
weather  and  terrain.  Not  protecting  valuable  property 
can  result  in  startling  penalties.  Life-like  variables  make 
FOREST  FIRE  a  verv  suspenseful  and  challenging  simu 
lation.  PRICE  .  tl6.95cassette  $20.95distiette 

a  PILOT:  by  l^ichael  Piro  (Atari.  16K) 

Pilot  your  small  airplane  to  3  successful  landing  using 
both  joysticks  to  control  throttle  and  attack  angle.  PILOT 
produces  a  true  perspective  rendition  of  the  runway, 
which  IS  constantly  changing.  Select  from  two  levels  of 
pilot  proficiency 
PRICE $16.95cassette  $20.95tliskette 

□  ALPHA  FIGHTER:  by  Douglas  McFarland  (Atari,  I5K) 
Consisting  of  t*o  different  programs,  ALPHA  FIGHTER 

requires  you  to  destroy  the  ahen  starships  As  you 
become  more  successful,  the  games  gel  harder  and 
and  harder  PRICE. . . .  tl4.95cassette  $18.95 diskette 

□  GIANT  SLALOM:  by  Dennis  Zander  (Atari,  16K) 
BringtheWinterOlympicsto  your  computer  anytime  of 

the  year'  Use  the  joystici^  to  guide  your  skier's  path 
down  a  giant  slalom  course  consisting  of  open  and 
closed  gates.  Choose  from  three  levels  of  difficulty 
Take  practice  runs  or  compete  against  from  [vro  to 
eight  additional  skiers, 
PRICE  $15.95  cassette  $19.95  diskette 

D  HODGE  POEXSE:  by  Marsha  Meredith 

{Apple 4BK,  Applesoft  or  Integer  BASIC) 
This  captivatingprogram  is  a  marvelous  teaming  device 
for  children  from  18  months  to  6  years  HODGE  PODGE 
consists  of  many  cartoons,  animations  and  songs  which 
appear  when  any  key  on  the  computer  is  depressed.  A 
must  for  any  family  containing  young  children  and  an 
Apple, 
PWCE   $19,95diskette 

□  STUD  POKER:  by  Jerry  White  (Atari,  16K) 

This  is  the  classic  gambler's  card  game.  You  will  find 
the  computer  to  be  a  worthy  opponent  who  occasionally 
bluffs  but  never  cheats!  STUD  POKER  employs  all  of  the 
Atari'ssound.  color  and  graohicscaoabilities. 
PRICE   $14.95CassetteS18,95diskette 


-TYPE.'N.TALK*  ■ 


ARTWORX  IS  offering  the  fantastic  TYPE-'N-TALK'" 
from  Vortraj('  This  easy-to-use  unit  connects  to  your 
computer's  serial  port  Text  is  automatically  translated 
into  electronic  speech  enabling  the  TYP£-'N  -TALK'" 
hobbyist  to  use  a  nd  enioy  it  immediately. 
PRICE    , $329,00 

The  following  ARTWORX  programs  are  available  for 
TYPE'N-TALK 

STUD  POKER  (Aiari,24K)   $16.95  cassette 

$20.95diskette 
TEACHER'SPET(Atari.24K:NorthStar)  $16.95/  $20.95 
BRIDGE 2.0  (Alan,  24K:  North  Star)  $19.95  /  $23.95 
NOMINOES  JIGSAW  (Atari.  24K).  $17.95  /  $21.95 
Please  specify  'TNT"  version  when  ordering  programs 

D  CRANSTON  MANOR  ADVENTURE:  by  Larry  Ledden 
(Atari,  North  Star  and  CP/ri(l) 
You  mu  St  enter  mysterious  Cranston  lienor  and  attempt 
to  collect  its  many  treasures  This  exlemely  challenging 
program  will  provide  you  with  many  hours  (days')  of 
adventure.  The  program  may  be  interrupted  at  will  and 
you  r  status  saved  onto  the  diskette 
PRICE  $21.95diskelte 

n  BLOCKADE:  by  Edward  Schneider  (Atari,  leK) 

Every  games  library  needs  Blockade  program,  and  this 
IS  one  01  the  best   Choose  from  three  levels  of  diffr 
cully  and  play  against  another  person  or  by  yourself 
against  the  clock. 
PRICE  $14.95 cassette  $ia,95diskette 

n  TEACHER'S  PET:  by  Arthur  Walsh  (Atan,  Apple, 

TRS-80,PET,  North  Star  and  CP/M  (MBASIC)  systems] 
This  IS  an  introduction  to  computers  as  well  as  a  learn- 
ing tool  for  the  young  computenst  (ages  3-7)  The  pro- 
gram provides  counting  practice,  letter-word  recognition 
and  three  levels  of  math  skills 
PRICE    .    .  $14.95casse<te$18.95diskettp 

□  FORM  LETTER  SYSTEM:  (Alan,  North  Star  and  Apple) 
This  is  the  ideal  program  for  creating  personalized  form 
letters'  FLS  employs  a  simple  to  use  text  editor  for  pro 
ducing  fully  justified  letters  Addresses  are  stored  in  a 
separate  file  and  are  automatically  inserted  into  your 
form  letter  along  with  a  personalized  salutation.  Both 
letter  files  and  address  files  are  compatible  with  ART- 
WORK f^AIL  LIST  3  Oand  TEXT  EDITOR  programs 
PRICE       $59.95diskette 

o  TEXT  EDITOR:  (Atari  and  North  Star) 

This  prograrri  is  very  "user  friendly"  yet  employs  all 
essential  features  needed  for  serious  text  editing  with 
minimal  memory  requirements  Features  include  com 
mon  sense  operation,  two  different  lustification  tecfini- 
ques,  automatic  line  centering  and  straiRhtforward 
text  merging  and  manipulation  TEXT  EDITOR  files  are 
compatible  with  ARTWORX  FORM  LETTER  SYSTEM 
PRICE   -  -   $39,95diske(te 


D  MAIL  LIST  3,0:  (Atari,  Apple  and  North  Star) 

The  very  popular  MAIL  LIST  2.2  has  now  been  up- 
graded. Version  3,0  offers  enhanced  editing  capabilities 
to  complement  the  many  other  features  which  have  made 
this  program  so  popular,  MAIL  LIST  is  unique  in  its 
ability  to  store  a  maximum  number  of  addresses  on  one 
diskette  (typically  between  1200  and  2500  names!) 
Entries  can  be  retrieved  by  name,  keyword(s)  or  by  zip 
codes  They  can  be  wntten  to  a  printer  or  to  another 
file  for  complete  file  management  The  program  pro- 
duces 1,  2  or  3  up  address  labels  and  will  sort  by  zip 
code  (5  or  9  digits)  or  alphabetically  (by  last  name).  Files 
are  easily  merged  and  MAIL  LIST  will  even  find  and 
delete  duplicate  entnes!  The  address  files  created  with 
MAIL  LIST  are  completely  compatible  wrth  ARTWORX 
FORM  LETTER  SYSTEM, 
PRICE   $49.95  diskette 

D  THE  VAULTS  OF  ZURICH;  by  Felix  and  Ted  Herlihy 
(Alari.24K,  PET) 
Zurich  IS  the  banking  capital  of  the  world.  The  rich  and 
powerful  deposit  their  wealth  in  its  famed  impregnable 
vaults  But  you,  as  a  master  thief,  have  dared  to  under- 
take the  boldest  heist  of  the  century  You  will  journey 
down  a, maze  of  corridors  and  vaults,  eluding  the  most 
sophisticated  security  system  m  the  world.  Your  goal  is 
to  reach  the  Chairman's  Chamber  to  steal  the  most  trea- 
sured possession  of  all:  THE  OPEC  OIL  DEEDS! 
PRICE $21,95 cassette   $25,95  diskette 

a  BRIDGE  2,0  by  Arthur  Walsh  (Atari  (24K),  Apple 
TRS-80,  PET.  North  Star  and  CP/M  (MBASIC) systems) 
Rated  Kl  by  Creative  Computing,  BRIDGE  2,0  is  the 
only  program  that  allows  you  to  both  bid  for  the  contract 
and  play  out  the  hand  (on  defense  or  offense!).  Interest- 
ing hands  may  be  replayed  using  the  "duplicate"  bridge 
feature  This  is  certainly  an  ideal  way  to  finally  learn  to 
play  bridge  or  to  get  into  a  game  when  no  other  (human) 
players  are  available. 
PRICE  $17.95cassette$21,95diskette 

□  ENCOUNTER  AT  QUESTAR  IV:  by  Ckjuglas  McFarland 

(Atari,  24  K) 
As  helmsman  of  Rikar  starship,  you  must  defend 
Questar  Sector  IV  from  the  dreaded  Zentarians.  Using 
your  plasma  beam,  hyperspace  engines  and  wits  to  avoid 
Zentarian  mines  and  death  phasers,  you  struggle  to  stay 
alive.  This  BASIC/Assembty  level  program  has  super 
sound,  full  player  missile  graphics  and  real  time  action 
PRICE $23.95cassette$27,95diskBtte 

D  THE  NOMINOES  JIGSAW  PUZZLE: 

bvC,  Minns/B,  Brownlee  (Alan,  24K,  TRS-80.  and  Apple) 
We  quote  , ,  "A  brainteaser  supreme.  . .  the  concept 
of  NOMINOES  JIGSAW  is  brillanl.  .  this  video  iigsaw 
game  is  so  clever  and  completely  original  that  only 
the  most  hardhearted  cuzzlehatercouldfail  to  becharm- 
ed,"-ELECTRONIC  GAMES  I^AGAZINE. 
PRICE  $17,95  cassette  (also  available  tor  TRS-80  color 
computer)  $21,95di5kette 


Highest  Quality 
Software', 
Guaranteed. 

ARTWORX  SOFTWARE  COMPANY 

150  North  Main  Street     Fairport,  NY  14450     (716)  425-2833 
Call  ARTWORX  toll-free  number  to  order  direct:  — 

kl    800-828-6573        in  (^ew  York,  Alaska,  Hawaii  call:  (716)-426.2833 

All  orders  are  processed  and  shipped  within  48  hours. 


Shipping  and  handling  charges: 

Within  North  America:  Add$2.00 

OutsiiJe  North  America:  Add  10%  (Air  Mail) 

New  York  State  residents  add  7%  sales  tax. 

Quantity  Discounts: 

Deduct  10%  when  ordering  3  or  rrore  prografns 

Ask  for  ARTWORX  at  your  local  computer  store. 


Write  for  FREE  Catalogue 
listing  more  information 
about  these  and  other 
quality  ARTWORX  programs. 


■ATARI.  APPLE,  TRS-80,  PET,  NORTH  STAR,  CP/M.  and  TYPE'N  TALK  are  registed  tradenames  and/or  trademarks.  • 


COLLEGE  BOARD  SAT*  PREP  SERIES 

TRS-80,  APPLE,  PET,  05I,  ATARI,  CP/M,  PDP-1 1 

Each  program  confronts  the  user  with  a  virtually  limitless  series  of  questions  and  answers.  Each  is  based  on  past 
exams  and  presents  material  on  the  same  level  of  difficulty  and  in  the  same  form  used  in  the  S.AT.  Scoring  is 
provided  in  accordance  with  the  formula  used  by  College  Boards. 

S.A.T.,  P.S.A.T.,  N.M.S.Q.T.  —  Educator  Edition  set  includes  25  programs  covering  Vocabulary,  Word  Relationships, 
Reading  Comprehension,  Sentence  Completion,  and  Mathematics.  Independent  tests  of  S.A.T.  series  performance 
show  a  mean  total  increase  of  70  points  in  students'  scores.  Price  $229,95 

GRADUATE  RECORD  EXAM  Series  —  Educator  Edition  includes  28  programs  covering  Vocabulary,  Word  Relation- 
ships, Reading  Comprehension,  Sentence  Completion,  Mathematics,  Analytical  Reasoning  and  Logical  Diagrams. 

Price  $289.95 

COMPETENCY  PROFICIENCY  EXAM  PREP  SERIES 

This  comprehensive  set  of  programs  consists  of  simulated  exam  modules,  a  thorough  diagnostic  package,  and  a 
complete  set  of  instructional  programs.  It  is  designed  to  teach  concepts  and  operations,  provide  drill  and  practice  and 
assess  achievement  levels  through  pre  and  post  testing.  The  Competency  Exam  Preparation  Series  provides  a  struc- 
tured, sequential,  curriculum  encompassing  mathematical,  reading  and  writing  instruction. 

This  program  is  designed  for  individual  student  use  or  use  in  a  classroom  setting.  Programs  provide  optional  printer 
capability  covering  worksheet  generation  and  performance  monitoring.  C.E.P.S.  are  available  in  three  software  formats. 

Special  editions  available  for  California  Proficiency  Assessment  Test  and  New  York  Regents  Competency  Tests.  Call 
for  Prices. 

M.LT.  Logo  for  Apple  $1 79.95 


Odyssey  In  Time 

This  spectacular  adventure  game  adds  a 
new  dimension  of  excitement  and  complex- 
ity to  Time  Traveler. 

Odyssey  tn  Time  Includes  all  the  chal- 
lenges of  Time  Traveler  plus  10  additional 
eras.  Each  game  Is  different  and  may  be  In- 
terrupted and  saved  at  any  point  for  later 
play.  $39.95 

Time  Traveler 

The  best  of  the  adventure  games.  Confronts 
the  player  with  complex  decision  situations 
and  the  demand  for  real  time  action.  Using 
the  Time  Machine,  players  face  a  challeng- 
ing series  of  historical  environments.  To 
succeed  you  must  build  alliances  and 
struggle  with  the  ruling  power.  Each  game 
is  unique.  $24.95 


Isaac  Newton       + 

Perhaps  the  most  fascinating  and  valuable 
educational  game  ever  devised  •  ISAAC 
NEWTON  challenges  the  players  (1-4)  to 
assemble  evidence  and  discern  the  under- 
lying "Laws  of  Nature"  that  have  produced 
this  evidence.  ISAAC  NEWTON  is  an  induc- 
tive game  that  allows  players  to  intervene 
actively  by  proposing  experiments  to  deter- 
mine If  new  data  conform  to  the  "Laws  of 
Nature"  in  question.  Players  may  set  the 
ievel  of  difficulty  from  simple  to  fiendishly 
complex.  ^^ 


F.G.  Newton 

Full  Graphics  Newton.  This 
version  of  Isaac  Newton  pre- 
sents all  data  in  graphic  form. 
Because  data  is  graphic  rather 
than  symbolic,  this  game  is 
suitable  for  very  young  child- 
ren. Players  may  select  diffi- 
culty levels  challenging  to  the 
most  skilled  adults. 

$49.95 


^MICRO-DEUTSCH^ 

Micro-Deutsch  set  includes  24  grammar  les- 
sons, covering  all  material  of  an  introductory 
German  course.  Four  test  units  also  included. 
Grammar  lessons  use  substitution  transformation 
drills,  Item  ordering,  translations  and  verb  drills. 
Drill  vocabulary  based  on  frequency  lists.  Suit- 
able for  use  with  any  high  school  or  college  text- 
book. Extensively  field  tested  at  SUNY  Stony 
Brook.  Available  (or  Apple  Hand  PET/CBM,  (PET  version 
includes  a  special  foreign  language  character  chip.)  Also 
available  soon:  MICRO-FRANCAIS,  MICRO-ESPANOL, 
MICRO-IVRIT,  MICRO-YIDDISH.  MICRO-CHINESE,  MICRO- 
JAPANESE.  $179.95 

if  NEW  if 

irPythagoras  and  The  Dragon-R- 

Mathematics  In  a  fantasy  game  context.  Based 
on  The  Sword  of  Zedek,  Pythagoras  and  The 
Dragon  introduces  Pythagoras  as  a  mentor  to 
the  player.  When  called  on  for  aid,  Pythagoras 
poses  math  questions,  and  depending  on  the 
speed  and  accuracy  of  the  player  response,  con- 
fers secret  information.  With  Pythagoras  as  an 
ally,  the  quest  to  overthrow  Ra,  The  Master  of 
Evil,  assumes  a  new  dimension  of  complexity. 
Depending  on  the  level  chosen,  problems  range 
from  arithmetic  through  plane  geometry. 

32K  $39.95 


Free  Bonus  with  purchase  of  $300.00  or  more:  Applesoft  Tutor  Series 


KnII  Soflwart  Corp.  las  no  afjlelat  ties  with  the 
College     EHInmce     Exeminallon     Board     or     the 
EdueQtionol  Testitig  Service.     Krelt  is,  however,   a 
supplier  of  products  tothe  E.T.  S, 
PROGRAMS  AVAILABLE  FOR 
TRS-eO.  APPLE  I  [,  PET  &  ATARI 
N.¥.S.r«idenls  add  sales  lu. 

Att  programs  require  16K  •  TKS-SO  prosrarm  rrqvire 
LEVEL  II  BASIC  •  APPLE  programs  requite  Apple- 


"Tfte  StAte  of  the  Art  in  Educational  Computing" 

21  Mlllbrook  Drive,  Stony  Brook,  N.Y.  11790    {516)  751-5139 


Moth  (Hurtle 


is  crying.  Why?  Because  he  has  learned  that  a  leading  microcomputer 
manufacturer  is  planning  to  market  an  imitation  of  M.I.T.'s  Logo  for 
Apple  II*.  He  thinks  that  Alice  and  the  world's  children  deserve  the 
genuine  article.  Namely, 


M.I.T.  Logo  for  Apple  II 


S.3 


:.-    O 


Krell's  M.l.T.  Logo  for  Apple  II*  is  a  copyrighted  product  of  the  IVlassa- 
chusetts  Institute  of  Technology.  Logo  was  developed  under  a  grant 
furnished  by  the  National  Science  Foundation.  Krell's  M.LT.  Logo  for 
the  Apple*  includes  many  special  features  such  as  Beaver  Graphics 
and  Krell  Instant  Logo  Tutor  Package.  The  entire  package  is  fully  docu- 
mented for  teachers  and  students.  Requires  64K. $179.95 


RELATED  BOOKS 

Apple  Logo  by  Harold  Abelson 

(McGraw  Hill):  indispensable 

Mindstorms  by  Seymour  Papert 
(Basic  Books) 


14.95 


12.95 


Computer  Connections  by  Jean  N.Nazzaro, 
Editor  (ERIC)  16.65 


Memory  expansion  boards  to 
64K  for  Apple  ir.  130.00 

FREE  BONUS  with  purchase 
of  $300.00  ormore: 
Applesoft  Tutor  Series 

PROGRAMS  AVAILABLE  FOR 
TRS-80,  APPLE  II,  PET  &  ATARI 

N.Y.S.  residents  add  sales  tax. 
*  Trademark  of  Apple  Corp. 


m 


"The  State  of  the  Art  in  Educational  Computing" 

2 1  Millbrook  Drive  "Stony  Brook.  New  York  I 
(516)751-5139 


1790 


26 


COMPUTE! 


February.  1982  Issue  21 


technical  ranks  lack  the  respect  of  their  workers. 

A  Struggle  Between  Monotony  And  Perfectionism 

lO  operate  a  roinputcr  is  to  live  with  stress,  even 
for  relatively  low-level  operators.  Consider  the 
operator  whose  joli  it  is  to  process  claims  and  trans- 
fer (lata  from  one  soince  to  another.  The  macliine 
will  have  "peaks"  and  "valleys"  -  a  job  requiring 
thir(v  minules  al  7:00  A.M.  may  take  several  hours 
at  mid-afternoon;  and,  every  so  often,  due  to  over- 
load, the  whole  system  crashes. 

These  fluctuations  fragment  the  worker's 
planning  process,  his  ability  lo  sirucliu'c  his  work- 
day. However,  the  machine  makes  no  mistakes  and 
turns  out  a  uniform  product,  (iivcn  the  repetitive 
natine  ol  his  task,  the  \vorkcr  struggles  between 
monotony  and  perfectioiiism.  It  is  the  machine 
lliat  gels  credit  for  a  job  well  done,  and  there  is  no 
iuuiian  feedbac  k  iiui  insic  lo  tlif  system. 

Analysts,  those  whcj  write  the  programs,  are 
familiar  with  the  dreaded  2:00  .A.M.  phone  call:  "It 
blew  up."  And  the  challenge  will  be  to  fix  it  l^'fore 
0:00  in  the  morning  when  perhaps  thousands  of 
other  workers  must  depend  on  il,  or,  in  the  case 
above  of  the  automatic  inieiesl  ]jayments.  eight 
million  dollars  may  ride  on  it.  It  is  no  surprise  that 
manvof  them  cat  Maalox  likccandv. 


An  ace  analyst  is  one  who  has  few  peers  and 
earns  little  praise,  due  to  the  iact  that  so  few 
inulerstand  what  goes  into  iris  work.  Knowledge 
luiilds  with  the  ntimber  oi  svslems  up<jn  whit  li  he 
has  worked.  This  can  have  a  snowball  effect  within 
the  organization,  always  with  increasing  numbers 
of  people  asking  "I-Iow  does  this  [jrogram  work?" 
about  increasing  numbers  of  systems.  For  some,  ii 
is  a  gradual  process  of  becoming  identified  with 
the  machine  —  more  and  more  information  de- 
manded -  with  the  effect  that  large  chunks  of  self, 
time,  and  energ)'  are  drained.  Tyrannized  b\'  liieir 
own  expertise,  I  he  pressure  ceases  only  when  ihey 
change  jobs.  Then  they  are  no  longer  responsible 
lor  everv  svstem  upon  which  the\  have  ever  worked. 

All  of  these  proljiems  are  felt,  but  generalh  go 
unstated,  surfacing  as  negative  ijehavior  — sabotage, 
absenteeism,  last-minute  sick  calls,  lre(]ueni  job 
ibauges  —  or  as  direct  problems  with  protUu  ti\ity. 
F.mployees  and  managers  need  more  tecimical 
liaining,  training  on  how  to  adapt  to  new  tech- 
nology, and  better  work  designs. 

f  he  power  of  technology  has  silenced  all  but 
the  gallows  Iiumor  which  has  grown  up  around  it: 
"If  I  hung  myself,  the  machine  would  just  keep 
plugging  away."  Technostress  manifests  itself  in  a 
\ariei\  of  \\'a\'s.  © 


LABELl  Y  (LABEL.X)  LABEL  +  JNDX-J 


6502  Assembler/Editor 


APPLE 
ATARI 
PET 


SYM 


Before  you  buy  that  off-brand  Assembler/Text  Editor,  note  that  EHS  is  the  only  connpany  that  provides  a  | 
line  of  compatible  ASM/TED 's  for  the  PET/APPLE/ATARl/SYM/KIM  and  other  microcomputers. 
Iwhen  you  make  the  transition  from  one  of  these  6502-based  microcomputers  to  another,  you  no  longer  I 
Ihave  to  relearn  peculiar  Syntax's,  pseudo  ops,  and  commands.  Not  only  that,  EHS  ASM/TED's  are  the 
only  resident  6502  Macro  Assemblers  availiable  and  they  have  been  available  for  several  years.  Thus  you 
lean  be  sure  they  work.  Our  ASM/TED's  may  cost  a  little  more  but  do  the  others  provide  these  powerful 
(features:  Macros,  Conditional  Assembly,  String  Search  and  Replace,  or  even  up  to  31  characters  per  label?  | 
]  Before  you  spend  your  money  on  that  other  ASM/TED,  write  for  ouf  free  detailed  spec  sheet. 


MACRO  ASM/TED 

•  For  APPLE/ATARI/PET/SYM/KIM 

•  Other  than  our  MAE,  no  other  assembler 
is  as  powerful. 

•  Macros/Conditional  Assembly. 

•  Extensive  text  editing  features 

•  Long  Labels 

•  Designed  for  Cassette-based  systems. 

$49.95 


MAE   ASM/TED 

For  APPLE/ATARI/PET 

The  most  powerful  ASM/TED 

Macros/Conditional  and  Interactive  Assembly 

Extensive  text  editing  features 

Long  Labels 

Control  files 

Designed  for  Disk-based  Systems. 

$169.95 


VISA' 


EASTERN  HOUSE  SOFTWARE 

3239  Linda  Drive  PHONE  ORDERS 

Winston-Salem,  N.C.  27106      USA    (919)924-2889 
(Dealer  Inquiries  Invited)  (919)  748-8446 


MoslmCanl 


.EN     .BY 


.BA 


ROCKWELL  Microcomputers  from  Excert,  Inc. 


THE  AIM  65/40 
Single  Board  or  Smorgasbord 


•  A  full  size  terminal  style  keyboard  w/8  special 
function  keys 

•  A  smart,  40  character  display  with  its  own 
microprocessor 

•  A  40  column  printer  w/text  and  graphic  output 

•  Up  to  64K  of  on-board  RAM  and  ROM 

•  On-board  interfaces  include  RS232,  dual  audio 
cassette  and  2  user  I/O  R6522  devices 

•  Firmware  includes  interactive  monitor  and  text 
editor  w/options  of  Assembler,  BASIC,  FORTH 
and  PL/65 


THE  AIM  65 
Take-Out  Order 


/g^ 


•  A  full  size  terminal  style  keyboard  w/3  special 
function  keys 

•  A  20  character  display 

•  A  20  column  printer  w/text  and  graphic  output 
capability 

•  Up  to  4K  RAM  and  20K  ROM  on-board 

•  On-board  interfaces  include  20MA  TTY,  dual 
audio  cassette  and  1  user  I/O  R6522  device 

•  Firmware  includes  interactive  monitor  and  text 
editor  w/options  of  Assembler,  BASIC,  FORTH, 
PASCAL,  &  PL/65 


And  if  the  above  isn't  enough, 
Try  the  RM65  —  a  product  line  filled  with  embellishments  including: 


32K  DRAM  Board 
CRT  Controller 
Floppy  Disk  Controller 
PROM  Programmer 


ACIA  Board 
IEEE-488Board 
CPU/SBC  Board 
4-1 6  Slot  Card  Cages 


Prototype  cards 
Adaptor  Buffer  Modules 
General  Purpose  I/O  Board 
PROM/ROM  Board 


NEW  LOWER  PRICES  AND  A  CASH  DISCOUNT*  TO  BOOT! 


A65/40-16(16KRAM) $1225 

A65/40-32  (32K  RAM) $1295 

A65/40-A  (Assembler)  $     85 

A65/40-B  (BASIC) $     65 


Mail  Order  to: 


Educational  Computer  Division 
EXCERT INCORPORATED 


SALES 
SERVICE 

(NSTALWTION 
CONSULTING 


P,0  Box  8600 

White  Bear  Lake,  MN  55110 

(612)426-4114 


A65-1  (IK  RAM) $420 

A65-4  {4K  RAM) $445 

A65^B  (4K  RAM  w/BASIC)   $495 

A65-PS  (PASCAL)    $100 

A65-F  (FORTH)   $65 

A65-A  (Assembler) $  35 


Higher  quantities  quoted  upon  request,  COD's  accepted, 
shipping  will  be  added.  *Deduct  5%  cash  discount  on 
prepaid  orders.  Minnesota  residents  add  5%  sales  tax. 
Prices  subject  to  change  without  notice. 


28 


COMPUTEI 


February.  1982.  issue  21 


Insurance 
Inventory 


Robert  W  Baker 
Atco,  NJ 


This  program  -  versions  for  Microsoft  and  Atari 
B  ASICs  —  was  written  to  provide  an  easy  means  of 
maintaining  an  inventory  of  personal  possessions 
for  insurance  or  other  related  purposes.  Informa- 
tion is  stored  on  cassette  tape  for  later  retrieval 
and  easy,  compact  storage  such  as  in  a  safety 
deposit  box. 

Running  the  program  is  quite  simple:  to  create 
a  new  data  file  simply  select  that  mode  and  answer 
the  questions  concerning  the  item  description, 
make,  model,  serial  number  of  other  identifying 
markings,  date  acquired,  and  original  value.  Typing 
RETURN  for  any  question  will  automatically  enter 
a  question  mark  for  that  entry.  When  all  questions 
are  entered,  the  entire  entry  will  be  displayed  and 
you  will  be  asked  if  it  is  correct  before  it  is  actually 
written  in  the  data  file. 

Typing  "D"  (for  DONE)  for  any  entry  will 
abort  that  entire  item  entry,  close  the  output  file, 
and  return  to  the  program  command  mode.  Typing 
"E"  {for  ERROR)  will  abort  the  entire  item  entry 
and  restart  it  with  the  first  question.  Be  careful 
when  entering  new  items  into  the  data  file,  do  not 
use  commas  ","  or  colons  ":"  to  separate  words 
within  a  description,  etc.  since  BASIC  thinks  you 
may  be  entering  more  than  one  string.  Use  dashes 
or  some  other  graphic  character  and  play  it  safe. 
Avoid  using  quotes  as  well,  for  similar  reasons. 

A  Full  Update  Capability 

To  read  an  already  created  data  file,  insert  the  tape 
and  select  that  program  mode.  Three  items  will  be 
displayed  at  a  time,  with  all  information.  Hitting 
any  key  except  "D"  (or  RUN/STOP)  will  display 
the  next  three  entries.  Typing  "D"  will  terminate 
the  read  mode,  close  the  input  file,  and  return  to 
the  program  command  mode. 

Other  program  modes  are  provided  to  copy  or 
edit  the  data  files  produced  by  this  program.  The 
edit  mode  allows  copying  or  deleUng  individual 
entries.  You  can  insert  new  items  at  any  point. 
Also,  a  search  feature  is  included  to  copy  all  items 
until  a  specific  item  is  found.  However,  with  tape 
data  files,  two  tape  drives  are  required  for  these 
functions  for  obvious  reasons. 

All  program  modes  provide  file  and/or  drive 
selection  for  ease  of  use.  A  default  file  name  of 


INVENTORY  DATA  will  be  generated  unless  you 
enter  a  specific  filename.  If  you  should  have  a 
large  number  of  items  to  catalog,  you  may  want  to 
use  separate  data  files  for  each  room,  for  items 
acquired  each  year,  specific  collections,  etc.  Pro- 
gram use  should  be  self-evident  through  prompting 
instructions  displayed  by  the  program.  At  pre.sent, 
the  program  does  not  provide  a  print  option  since 
it  was  designed  for  storage  of  large  amounts  of 
personal  data.  It  should  be  rather  easy  to  add  a 
printing  feature  if  you  really  think  it's  necessary. 

Describing  the  actual  program  is  rather  diffi- 
cult since  portions  of  the  pn)grani  are  used  for 
every  mode.  The  program  fiow  changes  depending 
on  the  selected  mode  and  various  control  fiags  thai 
are  set  dynamically  during  program  execution. 
The  program  was  originally  developed  on  an  8K 
PET,  so  I  tried  to  maximize  memory  usage,  allowing 
more  room  for  the  data  being  generated  and  used. 

Take  my  word  for  it,  the  program  does  work. 
If  you  want  to  avoid  typing  in  the  program,  send 
$2  and  an  SASE  and  tape,  for  a  copy  on  cassette 
tape.  [This  is  for  PET/CBM  users  only.]  For  anyone 
with  a  2040  disk,  I  have  another  version  of  this 
program  that  uses  sequential  disk  data  files.  This 
makes  the  EDIT  mode  much  more  useful.  If  you 
do  send  for  a  copy  on  tape,  be  sure  to  indicate 
which  version  you  want.  Also,  please  send  all  re- 
quests directly  to  me. 

Robnt  Baker 

15  Windsor  Drive 

Atco,  NJ  08004 


Program  1:  Microsoft  Version 

80  POKE  59468,12  : PRINT" {CLEAR}      HOUS 

EHOLD  INVENTORY  PROGRAM"  :GOSUB  ~ 

1340 
90  PRINT"DESIRED  PROGRAM  MODE: 
100  PRINT  :PRINT"  0  =  DONE 
110  PRINT"  1  =  READ  DATA 
120  PRINT"  2  =  WRITE  NEW  DATA  FILE" 
130  PRINT"  3  =  COPY  DATA  FILE  §_^ 
140  PRINT"  4  =  EDIT  DATA  FILE  @1@  REQ'S  2 

TAPES 
150  GOSUB  1340  :PRINT  :PRINT"MODE  ?"; 
160  GOSUB  1440  :IF  R$="0"  THEN  END 
170  R=VAL(R$)  :IF  R<1  OR  R>4  THEN  160 
180  Z=R  :0N  R  GOTO  400,190,39  0,390 
190  GOSUB  1310  :IF  Z>2  THEN  T=2  :T$="2"  : 

GOTO  220 
200  PRINT  :INPUT"OUTPUT  TO  TAPE  DRIVE*  (1 

OR  2)    2{03  LEFT}",-T$ 
210  T=VAL(T$)  :IF  T< 1  OR  T>2  THEN  80 
220  PRINT  :PRINT"PUT  OUTPUT  TAPE  IN  DRIVE 

#";T$  iGOSUB  1390 
230  IF  F$<>"^"  THEN  260 
240  F$="INVENTORY  DATA"  :IF  Z>2  THEN  F$=X 

$ 
250  PRINT  ;PRINT"DEFAULT  FILENAME  =  " ; F$ 


LETTER  PERFECT 


ATARI  400/800 


APPLE  II  &  11+ 


EASY  TO  USE  —  Letter  Perfect  is  a  single  load  easv  to  use  program.  It  is  a  menu  driven,  character  orientated  processor 
with  the  user  in  mind.  FAST  machine  language  operation,  ability  to  send  control  codes  within  the  body  of  the  program, 
mnemonics  that  make  sense,  and  a  full  printed  page  of  buffer  space  for  text  editing  are  but  a  few  features.  Screen  Format 
allows  you  to  preview  printed  text.  Indented  margins  are  allowed.  Data  Base  Merge  with  DATA  PERFECT  by  LJK,  form 
letters,  accounting  files  and  mailing  labels  only  with  MAIL  MERGE/UTILITY  by  LJK.  FEATURES  -  Proportional/ 
Incremental  spacing  *  Right  Justification  '  File  Merging  "  Block  movement  "  Headers  *  Footers  *  Print  Multiple  Copies  ' 
Auto  Page  Numbering  *  Scroll  forward/backward  '  Search  and  Replaces  '  Full  cursor  control  '  Underlining  "  Boldface  * 
Superscripts  *  Subscripts  *  Auto  page  numbering  *  Insert  character/line  *  Delete  character/line  *  Centering  *  Horizontal 
tabs/changeable  *  Multifunction  format  line  (line  spacing  —  left  margin  -  page  width  -  lines/page  —  change  fonts  —  top/ 
bot  margin  adjust)  MUCH  MORE!     $149.95 

ATARI  VERSION  2.0  #2001 

Compatible  with  Atari  DOS.  Uses  proportional  font  right  Justified  with  Atari  825/Centronics'  737,  739  printers.  Uses 
EPSON  MX '  Series  +  Graftrax/italici^ed  font.  Can  mix  type  fonts  on  same  page:  mix  boldface  and  enhanced  font  in  same 
line  with  Justification.  Can  be  used  with  I6K  Atari/400. 

"Compared  to  the  price  of  many  other  word  processors,  this  package  is  a  steal.  It  does  everything  the  advertisement 
claims  and  more.  On  top  of  this  the  software  is  very  easy  to  use."  A.N.A.L.O.G.  MAGAZINE 

APPLE  VERSION  5.0  #1001 

DOS  3.3  compatible  -  Use  40  or  80  column  interchangeably  (Smarterm  -  ALS;  Videoterm-Videx;  Full  View  80  —  Bit  3 
Inc.;  Vision  80  —  Vista:  Sup-R-Term  -  M&R  Ent.)  Reconfigurable  at  any  time  for  different  video,  printer,  or  interface. 
USE  HAYES  MICRDMODEM  ll"LCA  necessary  if  no  80  column  board,  need  at  least  24  K  of  memory.  Files  saved  as 
either  Text  or  Binary.  Shift  key  modification  allowed-  Data  Base  Merge  compatible  with  DATA  PERFECT*  by  LJK. 

"For  $150,  Letter  Perfect  offers  the  type  of  software  that  can  provide  quality  word  processing  on  inexpensive  micro- 
computer systems  at  a  competitive  price."  INFOWORLD 


DATA  PERFECT 


APPLE  &  ATARI 

DATA  BASE  MANAGEMENT 


$99.95 


Complete  Data  Base  System.  User  orientated  for  easy  and  fast  operation.  100%  Assembly  language,  Easy  to  use.  You  may 
create  your  own  screen  mask  for  your  needs.  Searches  and  Sorts  allowed.  Configurable  to  use  with  any  of  the  80  column 
boards  of  Letter  Perfect  word  processing,  or  use  40  column  Apple  video.  Lower  case  supported  in  40  column  video. 
Utility  enables  user  to  convert  standard  files  to  Data  Perfect  format.  Complete  report  generation  capability.  Much  More! 

T.M.LJK  $29.95 

APPLE  &  ATARI 


EDIT  6502 


This  is  a  coresident  ■-  two  pass  ASSEMBLER,  DIS- 
ASSEMBLER, TEXT  EDITOR,  and  MACHINE  LANGU- 
AGE MONITOR.  Editing  is  both  character  and  line 
oriented.  Disassemblies  create  editable  source  files  with 
ability  to  use  predefined  labels.  Complete  control  with  41 
commands,  5  disassembly  modes,  24  monitor  commands 
including  step,  trace,  and  read/write  disk.  Twenty  pseudo 
opcodes,  allows  linked  assemblies,  software  stacking 
(single  and  multiple  page]  plus  complete  printer  control, 
i.e.  paganation,  titles  and  tab  setting.  User  can  move 
source,  object  and  symbol  table  anywhere  in  memory. 
Feel  as  if  you  never  left  the  environment  of  BASIC.  Use 
any  of  the  80  column  boards  as  supported  by  LETTER 
PERFECT,  Lower  Case  optional  with  LCG. 

LJK  DISK  UTILITY  APPLE  S29.95 

This  menu  driven  program  allows  the  user  to  manipulate  a 
variety  of  different  file  types.  Binary,  Text,  and  Source 
files  may  be  easily  converted  into  each  other.  The  pro- 
gram may  be  used  with  APPLESOFT*,  VISCALC",  and 
other  programs.  These  program  files  may  be  readily 
adapted  for  multiple  use  mcluding  editing  with  LETTER 
PERFECT  word  processings. 


MAIL  MERGE/UTILITY 

This  menu  driven  program  combined  with  LETTER 
PERFECT  allows  user  to  generate  form  letters  and  print 
mailing  labels.  With  the  Atari,  you  may  CONVERT 
ATARI  DOS  FILES,  or  Visicalc  files  compatible  for 
editing  with  LETTER  PERFECT.  Utility  creates  Data 
Base  files  for  Letter  Perfect. 


LOWER  CASE  CHARACTER 
GENERATOR 


$34.95 


>«tStUVHXUZC  I  >^ 


Lower  Case  Character  Generator  for  the  Rev,  7,  Apple  II 
or  11+  computers.  When  installed,  this  Eprom  will  generate 
lower  case  characters  to  the  video  screen.  Lower  case 
characters  set  has  two  dot  true  descenders.  Installation 
instruction  included.  Manual  includes  listing  of  software 
for  full  support  and  complete  instructions  (or  shift  key 
modification.  Compatible  with  LETTER  PERFECT. 


1 


ENIERPRISES 


LJK  ENTERPRISES  INC. 

P.O.  Box  10827 

St.  Louis,  MO  63129 

(314)846-6124 


DEALER 

INQUIRES 

INVITED 


s  of;  Apple  Computer  -  Atari  CompuTer        Epson  America  -  Hayes  Nflicrocomputers  —  Personal 
Software  —  Vide>t  -  Bit  3  Inc.  -  M&R  Eni.  -  Advanced  Logic  Svstems  —  V>sta  Computers 


30 


COMPUTEI 


February,  19S2.  Issue  21 


260 


270 


280 

290 
300 
310 
320 

330 

340 
350 
360 

370 


380 
390 
400 


410 


420 
430 

440 

450 
460 
470 
480 
490 
500 
510 
520 
530 
540 
550 


560 
570 
580 

590 
600 


610 
620 

630 

640 
650 

660 

670 
680 


PRINT  : 
D";  :G 
340 

PRINT  : 

j;^{03 

1  THEN 
GOSUB  1 

OUTPUT 
OPEN  2, 
GOSUB  1 
CLOSE  2 
R=R-1  : 
PRINT  : 

I  ON  ED" 
OPEN  2, 
IF  Z=4 
GOSUB  9 

TO  360 
CLOSE  2 

E  #2{0 

E 
GOSUB  1 
GOSUB  1 
PRINT" { 

DATA  F 


PRINT"IS  OUTPUT  TAPE  POSITIONE 
OSUB  1360  :IF  R$="Y"  THEN  ~ 

INPUT"NUMBER  OF  FILES  TO  SKIP  ' 

LEFT}",-R$:R=VAL(R$)  :IF  R< 

80 
310  :PRINT  :PRINT"POSITIONING  " 

TAPE 
T,0 
290  ;IF  C=0  THEN  300 

:IP  C=2  THEN  580 
IF  R>0  THEN  290 
PRINT"OUTPUT  TAPE  IS  NOW  POSIT 

:GOSUB  1400  :PRINT 
T,1,F$  :IF  Z=3  THEN  600 
THEN  650 
40  :IF  C>0  THEN  GOSUB  1180  :G0 

:PRINT" {CLEAR} {REV}END  OF  MOD 
FF}   DONE  WRITING  DATA  FIL 

340  :GOTO  590 

310  :T=1  :T$="1"  :GOTO  430 
CLEAR} {REV}MODE  #1{0FF}   READ  " 
ILE  FROM  TAPE"  :G0SUB  1340 


PRINT 

1  OR 

T$) 
IF  T<1 
PRINT" 

";T$ 
IF  F$  = 

ADING 
OPEN  1 
IF  Z>2 
GOSUB 
GOSUB 
GOSUB 
GOSUB 
GOSUB 
GOSUB 
GOSUB 
GOSUB 
PRINT" 
DON 


;PRINT"RE 


:INPUT"INPUT  FROM  TAPE  DRIVE#  ( 
2)    1{03  LEFT}";T$  :T=VAL( 

OR  T>2  THEN  80 
{DOWN}PUT  INPUT  TAPE  IN  DRIVE  # 
:GOSUB  1390 
..^.1  .pfjgjj  F$  =  ""  :  PRINT 

NEXT  FILE  ON  TAPE 
,T,0,F$  :X$="" 

THEN  190 
1220  :IF  Ol 
C>0 
Ol 
C>0 
Ol 
C>0 


1140 
1220 
1150 
1220 
1150 
1350 
1460 


;IF 
:IF 
:IF 
;IF 
:IF 


THEN 
THEN 
THEN 
THEN 
THEN 
THEN 


550 
560 
560 
560 
560 
560 


IF 


470 


R$<>"D"  THEN 
{CLEAR} {REV}END  OF  MODE  flfOFF} 
E  READING  DATA  FILE"  : PRINT 


CLOSE  1 
IF  C=l 
IF  Ol 
TATUS 
GOSUB  1 
19$="'" 

WAIT{ 
FILE! 
GOSUB  1 
IF  Z=4 
THEN 
GOSUB  1 
IF  Z=3 
GOSUB  1 
GOSUB  1 
RINT"D 
PRINT" 

PRINT" 


GOSUB  1350 
THEN  PRINT"END  OF  DATA  FILE! 
THEN  PRINT"TAPE  READ  ERROR  (  S 
="ST") 

400  :GOTO  80 

:GOSUB  1310  rPRINT" {REV}PLEASE 
OFF}   ******   COPYING  DATA 


220  :IF  Ol  THEN  860 

THEN  IF  LEFTS (IS, LEN{I9S) )=I9$ 

GOSUB  1310  :GOTO  660 

180  :IF  C=l  THEN  860 

OR  I9$<>""  THEN  610 

220  :IF  Ol  THEN  860 

310  :GOSUB  1150  :GOSUB  1340  :P 

ESIRED  ACTION:"  :PRINT 

1  =  COPY  THIS  ITEM,  NO  CHANGE 

2  =  DELETE  THIS  ITEM 


6  90 

700 

710 
720 

730 
740 

750 
760 
770 

780 

790 

800 

810 
820 

830 
840 

850 
860 
870 
880 
890 

900 
910 
920 

930 
940 

950 
960 
970 

980 

990 


PRINT" 

ONE 
PRINT" 

OUND" 
PRINT" 
GOSUB 

THEN 
PRINT 
PRINT" 

770,8 
IF  C=l 
GOTO  6 
I9S=I5 

$  :V9 
GOSUB 

TO  78 
I$=I9$ 

$  :V$ 
GOSUB 

COPI 
PRINT 
PRINT" 

OR: 
INPUT" 
IF  19? 

DOWN} 
PRINT" 
IF  Z=3 
GOSUB 
PRINT" 
PRINT 

NTRIE 
PRINT 
GOSUB 
GOSUB 

TO  92 
GOSUB 
C=0  :P 

I  ON  :  " 
PRINT" 
PRINT" 
PRINT 

THIN 
PRINT 

FTER 
GOSUB 

04  LE 


3  =  INSERT  ITEMS  BEFORE  THIS  " 

4  =  SEARCH  &  COPY  TILL  ITEM  F 
rPRINT 

ACTION  ?  "; 

1440  :R=VAL(R$)  :IF  R<1  OR  R>4  " 

720 

R$ 

OK"  :I9$=""  :0N  R  GOTO  630,750, 

00 

THEN  860 
50 

:W9$=W5  :M9$=M$  :S9$=S$  :D9$=D 
$=V$  :C9=C 

940  :IF  C>0  THEN  GOSUB  1180  :G0 
0 

:WS=W9$  :M$=M9$  :S$=S9$  :D$=D9 
=V9$  :C=C9  :GOTO  660 
1310  :PRINT"ALL  ENTRIES  WILL  BE 
ED  UNTILL 

:PRINT"DESIRED  ITEM  IS  FOUND; 
(02  DOWN}ENTER  ITEM  TO  SEARCH  F 

_;;^{03  LEFT}";  19$ 
=  ..^.,  .pj^gjj  19$  =  ""  :PRINT"{03  DOW 
SEARCH  ABORTED"  :GOTO  660 
|03  DOWN} SEARCHING"  :GOTO  620 

THEN  570 
1310  :IF  Ol  THEN  580 
END  OF  INPUT  FILE! 
:PRINT"DO  YOU  WANT  TO  ADD  ANY  E 
S  TO  THE 

:PRINT"END  OF  THE  DATA  FILE"; 
1360  :IF  R$="N"  THEN  590 
940  :IF  C>0  THEN  GOSUB  1180  :G0 
0 

1310  :GOTO  590 
RINT" {CLEAR} ENTER  ITEM  INFORMAT 

:PRINT 
D  =  DONE  ENTERING  DATA 
E  =  ERROR,  RESTART  ENTIRE  ITEM 
:PRINT"DO  NOT  USE  ','  OR  ':'  WI 
THE  DATA 

:PRINT"PRESS  { REV} RETURN {OFF}  A 
EACH  ENTRY 

1340  :INPUT"{REV}ITEM{0FF}    ?{ 
FT}";I$  :IF  I$="E"  THEN  940 


1000  IF  I$="D"  THEN  RETURN 

1010  INPUT" {REV}MAKE{OFF}    ?{03  LEFT}";W$ 

: IF  W$="E"  THEN  94  0 
1020  IF  W$="D"  THEN  RETURN 
1030  INPUT" {REV}MODEL{OFF}    ?{03  LEFT}";M 

$  :IF  M$="E"  THEN  940 
1040  IF  M$="D"  THEN  RETURN 
1050  INPUT" {REV}SERIAL#/ID{0FF}    ?{03  LEF 

LEFT}";S$  :IF  S$="E"  THEN  940 
1060  IF  S$="D  THEN  RETURN 
1070  INPUT" {REV}DATE  ACQ'D{0FF}  (MONTH/DAY 

/YEAR)    ?{03  LEFT}";D$  :IF  D$=" 

E"  THEN  940 
1080  D$=LEFT$ (D$,8)  :IF  D$="D"  THEN  RETURN 


1090  INPUT" {REV}$VALUE{0FF} 
V$  :IF  VS="E"  THEN  940 
1100  IF  V$="D"  THEN  RETURN 


?{03  LEFT} 


/^t^H,  PROGRAM  STORE  ^V^'^k 


Crush,Crumble 
and  Chomp ! 


From  Epyx 

It's  a  monster  movie,  and  you  are  the  mon- 
ster! You  can  be  The  Clob,  Kraken,  Mantra, 
Mechi5mo,  Arschnis,  or  Goshilla  --  or  even 
design  your  own  "custom"  monster  [disk  ver- 
sion only).  This  hilarious  action  game  is 
loaded  with  graphics  and  sound  as  you  prac- 
tice your  villany.  With  6  monsters.  4  cities, 
and  5  game  objectives,  you  get  a  choice  of 
more  than  100  possible  scenarios.  A  monster's 
life  is  not  alt  carnivorous  crunching,  though: 
The  combined  resources  of  the  police^  sci- 
ence, and  armed  forces  are  bent  on  your 
destructton. 

32K   disk.  .,S29.95 

THRU   MARCH   15  ONLY  :  Pay  Just  S25.  45! 


Save  $$  on  Popular  Programs  for  Atari 

LliMITED  TIME  OFFER 
Now  shrough  March  15,  take  advantage  of  our  price  reduction  on  these   popoiar  programs 


FILE  MANAGER  800 

From  Synapse  Software 

An  extremeiy  powerful  and  versatile  database 
manager  for  use  in  both  professional  and  per- 
sonal applications.  You  define  the  format  of 
the  records  to  be  filed  and  FILE  MANAGER 
BOO  gives  you  full  control  over  sorting, 
searches,  and  retrieval.  You  can  store  up  to 
1000  records  on  each  disk  and  the  program 
will  allow  up  to  four  drives.  Access  to  any 
record  takes  less  than  T.5  seconds,  and  most 
commands  can  be  entered  with  self  prompting 
single  keystrokes. 

Atari  (IIOK  disk).  ,  .5911.95 

THRU   MARCH   15  ONLY:   Pay  Just  $80.  70! 


GHOST 


HUP 

MJ«U 


UNTER 


Progi-amB    for 

Aatari 

400/ BOO 

Q      Unless  Otherwise  Noted 


PERSONAL 
FINANCE 


From  Computari 

A  comprehensive  personal /small  business 
budget  organizer  that's  more  than  just  a 
checkbook  balancer.  Works  for  both  check  and 
cash  and  will  allow  up  to  100  transactions  per 
month.  One  check  can  be  divided  into  several 
categories  to  avoid  the  problem  usually  assoc 
iated  with  charge  card  and  department  store 
checks.  The  report  printer  works  with  most 
popular  printers  and  wilt  give  printouts  of 
Tabulations,  Check  Search,  and  Check  Re- 
conciliation categories.  Get  a  grasp  on  your 
finances,  order  PERSONAL  FINANCE  now. 

THRU  MARCH  15  ONLY:  Pay  Just  S42. 45! 


^^ 


fl 


S 


LTU 


nn 


H 


SAMMY 
the  Sea  Serpent 

From  PDl 

A  great  way  to  introduce  young  children 
(ages  it  and  up)  to  your  Atari  computer. 
Speech,  music,,  motion  and  color  hold 
youngsters  attention.  As  the  story  is  read, 
the  chiEd  is  asked  to  use  the  joystick  to  move 
Sammy  about ,  As  Sammy's  tasks  are  com- 
pleted, the  storytefler  goes  on  to  new  ones. 
Side  two  has  additional  games  for  the  child  to 
play  with  Sammy. 

16K  tape...S16.95 

The  exciting  haunted  house /maze  game  vthere     ^J^^  |  LiP%Wf  II^^WI  I  ^LClC 

you  must  get  the  ghosts  before  they  gel  you^ 

When  you  eat  the  pulsating   "energjzers, "   the 

ghosts  start   pulsating  and  become  vulnerable 

to  your  attack.    51    different    game  variations 

keep  things  interesting.    Play  alone  or  in  the 

"head-to-head"  mode. 

16K   tape  S29.95      16K  disk  $34.95 


n 


By  John  Harris  from  On-Line 
If  you  like  arcade  games  with  action,  you'll 
[ove  JAWBREAKER.  Guide  your  chompers 
through  a  ,  candystore  maze,  eating  "wi- 
fesavers"  as  you  go.  You  are  pursued  by  var- 
iously colored  "smilies,"  determined  to  knock 
your  teeth  out.  Eat  a  jawbreaker  and  the 
"smilies"  turn  to  blue  "frownies ,"  and  you  can 
eat  them!  It's  one  of  the  best  examples  of 
Atari  graphics  and  sound  we've  seen  -  you'll 
love  it! 
16K  disk..,S29.95 

Visit  our  other  stores:  Seven  Corners 


'  the  SMI 
Assembler 


ASSEMBLER 
BOOK 


From  Atari  Prog.  Exchange 
Two  super  arcade  games  in  one  program! 
OUTLAW  transports  you  to  the  old  west, 
where  you  are  engaged  in  a  shootout  on  the 
open  plains.  You  can  hide  behind  the  cacti 
that  are  scattered  about,  but  If  you  get  shot 
10  limes  it's  a  one-way  ticket  to  Boot  Hill, 
Pardner. 

You  command  a  tank  in  HOWITZER.  You're 
facing  an  opposing  tank  across  a  river  and 
must  fire  10  hits  to  win,  Both  games  can  be 
played  against  the  computer  or  a  friend,  and 
Ihere  BrQ  several  handicap  options  available. 
1CK   tape.. .514. 95    2yK  disk. . . $17, 95 

Sof  tPorn  Adventure 

By  Charles  Benton  from  On  Line 
You're  in  a  sleazy  bar  in  the  notorious  town  of 
"Las  Vagueness."  With  SIODO  in  your  pocket, 
you  set  out  to  fulfill  your  erotic  fantasy  of 
seducing  3  women  before  you  leave  town.  The 
casino,  with  its  blackjack  £  slot  machines,  is 
the  only  source  of  money.  The  women  and 
other  bizarre  pleasures  might  be  found  any- 
where, NOTE:  R-RATED  PROGRAM,  NOT 
FOR  MINORS. 
40K  disk...S29.95 

Center*  Falls  Church,  VA  &   W.B«II  Plaza 


ATARI  ASSEMBLER  BOOK 

By  Don  5  Kurt  Inman 

While  the  ATARI  ASSEMBLER  CARTRIDGE 
comes  with  an  operating  manual,  it  assumes 
that  you  already  know  assembly  language.  !f 
you're  new  to  the  Atari  or  its  6502  processor, 
this  book  is  a  must.  The  Inmans  guide  you 
through  the  rudiments  of  this  fascinating 
type  of  programing  in  clear,  easy  steps.  In- 
cludes full  listing  and  description  of  6502 
mnemonics  and  addressing  modes. 

312.95 


Some  Common 

BASIC 

Programs 

Atarl^  Edition 


By  Poole,  Borchers  I  Cook  from  Osborne 
From  "Alphabetizing"  to  "Withholding  Taxes" 
--  this  book  contains  75  program  listings  for 
solutions  to  common  (and  notso-commonj 
problems.  Finance,  math,  statistics,  projec- 
tions, and  household  utilities  are  included. 
With  complete  listings,  sample  runs^  and  des- 
criptions, you  needn't  be  a  programmer  to 
benefit  from  this  book. 

200  pages... S14.  95 

6600  Security  Blvd*-  Baftlmoro,  MD 


TO  ORDER  CALL  TOLL  FREE  800  424-2738 


For  information 
Call  (202)  363-9797 


MAIL  ORDERS:    Send  check  or  M.O.  for  total  purchase 
price,  plus  SI. 00  postage  &  handling.    D.C.  residents,  add 
6%  tax.   Charge  card  customers:   include  ail  embossed 
information  on  card. 


THE  PROGRAM  STORE 

4200  Wisconsin  Avenue  NW,  Dept.U02  Box  9609 
Washington,  D.C.  20016 


32 


COMPUTE! 


Febfuorv.  1982.  Issue  21 


1110  GOSUB  1140  :GOSUB  1340 

1120  PRINT"IS  THIS  ENTRY  CORRECT";  :GOSUB  * 

1360  :IF  R$="N"  THEN  940 
1130  C=l  :RETURN 
1140  PRINT" {CLEAR} "; 
1150  PRINT"{REV}ITEM: {OFF}  ";I$  :PRINT"{RE 

REV}MAKE:{OFF}  "  ;  W$ 
1160  PRINT" {REV}MODEL: {OFF}  " ; M$  :PRINT"{R 

REV}SERIAL#/ID: {OFF}  ";SS 
1170  PRINT" {REV}DATE  ACQ'D:{OFF}  "D$;TAB(2 

2)  ,-"{REV3VALUE:{0FF}  $";V$  :PRIN 

T  : RETURN 
1180  X$=I$  :GOSUB  1200  :X$=W$  :GOSUB  1200  " 

:X$=M$  :GOSUB  1200 
1190  X$=S$  :GOSUB  1200  :X$=D$  :GOSUB  1200  ' 

:X$=VS 
1200  PRINT#2,X$ 
1210  RETURN 
1220  GOSUB  1290  :I$=X$  :IF  C>0  THEN  RETURN 

1230  GOSUB  1290  :W$=X$  :IF  C>0  THEN  RETURN 

1240  GOSUB  1290  :M$=X$  :IF  C>0  THEN  RETURN 

1250  GOSUB  1290  :S$=X$  :IF  C>0  THEN  RETURN 

1260  GOSUB  1290  :DS=X$  :IF  C>0  THEN  RETURN 

1270  GOSUB  1290  :VS=X$  :IF  C=2  THEN  C=l 

1280  RETURN 

1290  C=0  :INPUT#1,X$  :IF  ST>0  THEN  C=3  :IF 

ST=64  THEN  C=2 
1300  RETURN 
1310  IF  Z=2  THEN  PRINT" {CLEAR} { REV} MODE  #2 

{OFF}   WRITE  NEW  DATA  FILE  ON  TA 

PE 
1320  IF  Z=3  THEN  PRINT" {CLEAR} { REV} MODE  #3 

{OFF}   COPY  DATA  FILE,  REQ'S  2  T 

APES 
1330  IF  Z=4  THEN  PRINT"{CLEAR} {REV}MODE  #4 

{OFF}   EDIT  DATA  FILE,  REQ'S  2  T 

APES 
1340  PRINT 
1350  PRINT" CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 

CCCCCCCC"  : PRINT  : RETURN 
1360  PRINT"  (Y/N)  ?  "; 
1370  GOSUB  1440  :IF  R5<>"Y"  AND  R$<>"N"  TH 

EN  1370 
1380  PRINT  RS.  :RETURN 
1390  INPUT" {DOWN}FILENAME  <  { REV} RETURN { OF 

OFF}  >    ^{03  LEFT}";F$  :RETURN 
1400  CLOSE  1  :CLOSE  2 
1410  IF  Z>2  THEN  PRINT  : PRINT"DEPRESS  {REV 

REV}STOP{OFF}  ON  BOTH  TAPE  DRIVE 

S"  :GOTO  1430 
1420  PRINT  :PRINT"DEPRESS  {REV} STOP{ OFF}  0 

N  TAPE  #"T$ 
1430  PRINT" {DOWN} HIT  ANY  KEY  WHEN  READY  TO 

CONTINUE";  :GOTO  1470 
1440  GET  R5  :IF  R$=""  THEN  1440 
1450  RETURN 
1460  PRINT  :PRINT''HIT  ANY  KEY  TO  CONTINUE, 

D=DONE"; 
1470  GOSUB  1440  :PRINT  :PRINT"OK"  iRETURN 


Program  2:  Atari  Version 

10  REM   IH-5URAHCE  IHIEHTORY 

m  REM  ROBERT  W.   Bh)<;ER  rTCO,.   HJ 

30  REM  ATfiRI  LJERSIOH  (C)  I'^fU 

40  F£M  SrtALL  SYSTEMS  SERUICES.    I^C. 

50  REM 

60  ifm  #2.-4..y.."K^" 

70  DI H  T$(  1  > .  X'l-C  80 ) ,  I  $(  80  >  j  \>i$<.  80 ) ,  n$<.  89 ) 

..S$<8k!;'.D$(3)..U$(20) 

88  GRAPHICS  id-l  "         IHSURftNCE  IHJEHTORY 

PR0GF,#1     " 

96  PRINT  ''Ctesired  Pr-osr-dm  mode^" 
100  ?  =?  "0  =  Dons" 
110  ?  "1  =  Read  D-dta" 
120  ?  "2  =  H-ite  New  Data  Fils" 
150  GCtSUB  1340^?  ^?  "Mode?  "; 
160  GieUB  1440= IF  R=48  THEN  Effi 
170  R::R-4t-IF  R<1  OR  R>2  THEH  1G0 
18*0  2==F:  =  0N  R  ODTO  480..  1 '58 
190  ?  "-tCLEAR}!   rtJDE  #2   I   l^PJTE  t€U  EwTft 

FILE" 
200  TFftP  2m- 7  "(DOH-ONufiiber  of  Files  to 

5i<;ip";  =  UPUT  R^TRAP  40006  =  IF  R<1  THEN  3 
40 

210  ?  "  ■LKWDF'ijt.  tire   in  drius;   press  Ft 
nr 

220  ?  "then  Pi-?iS5   1  RETURN!  ," 
230   IF  PEEK(764>=255  THEH  230 
270  Y  "-CCLEAF::!-!   HiDDE  n   1   l.f;ITE  HEW  DATA 

FILE' 
2"50  ?  "•CDOWN'iPositioriins  output  tape..." 

290  TRAP  310  =  OPEN  #1.4.-0,.  "C:" 

300  GiiSUB  1290  =  IF  C=0  THEH  300 

310  CLOSE  #1 = IF  C=2  THEH  580 

320  R-R-MF  R>0  THEN  2-90 

330  ?  =?  "uutpi.jt  tape  is  now  positioned. 

IDUWN>"= GOSUB  1400=? 


340  ■■■•  "Press  PLAY  i.  RECORD.    f>ri 


'=''=•   I 


RETLIR 


Hi  . " 

350    OPEN    «i.3.0;"C:" 

355  FOF:   1=1  TO  128;  =  PUT  ttl;32  =  NEXT  I 

360  GOSUB  940  =  IF  OS  THEH  QMM  lie^i  =  GOT 
0  360 

370  CLOSE  ii  =  ?  "{CLEAR:!- iEHD  iJF  MCCE  #21 
fone  wit  ins  data  file" 
380  GffiUB  1340  =  GOTO  598 
400  ?  "•CCLEARJinODE  #1!     READ  DATA  FILE 
FROM  TftF-E''=QJSUB  1340 
430  ?  "■CDOWrOFi.jt.  input  tape  in  dt-'iye.-   pr- 
ess   iPLAVL.     then  press   I  RETURN  I." 
450  TfAP  568  =  0FEH  #L4.,0,,"C  =  "=>:;$="": FOR 
1=1   TO  123  =  GET  #LR  =  ^EXT  I=TRAP  40806 
460  ?  "CDOWNJ-Readins  next  file  on  tape." 

470  GOSUB  1220=  IF  Oi  THEH  550 


Febtuory,  1982.  Issue  21 


COMPUTEI 


33 


486  GOSUB  1148^  IF  OQ  THEH  596 

490  GOSUB  1229 :  IF  Ol  THEN  5£8 

500   GOSUB   1150:  IF  C>ti  THEN  5S0 

51F1  GOSUB  1220  ^F  oi  THEN  569 

528  L-OSUB  il:j9:IF  C>8  THEN  556 

530  GOSUB   1359 

540  GOSUB  1466  ^F  ROASCC  "D'=  >  THEH  479 

559  ?  "iCL£RR>iE^JD  OF  MODE  #1!   DONE  READ 

ING  DATh  FILE":" 

569  CLOSE  #iH3uSUB  1359 

579  IF  C=2  THEN  ?  "End  of  daU  file!":C= 

1 

586   IF  Oi  THEN  ?  "TAPE  READ  ERROR-"; FEE 

K(195> 

598  bOSUS  1499^ GOTO  89 

949  C=0:?  "CCLEftRlEntsr-  itsim   intoriin'itiori 

950  ?  "p  =  Done  enterins  dita" 

96.9  '~:  '■£  =  E-frorj   restart  entire  Iteni" 
989  ?  ^t  ''r'r^ss   1  RETURN!   after  each  srtr 


1238  GOSUB  1290=M*=K*:IF 
1248  GOSUB  1299^m=X*aF 

1259  GOSUB  1290:S*=Xf:IF 

1260  GaSUB  1290--D-|=X$:IF 
1279  GOSUB  1298:U$=X$:IF 
OF' 

12-39  RETURN 

12-90  TRAP  1300M:=0aNPl!T 
0:  RETURN 

1300  C=3:IF  PEEK  195  >=i36 
H 

1348  ? 

1350  ?  "G8  R}"=F£TURN 

1360  ?  "  (Y/N>  ?  "; 

1370  GftSUB  1440  aF  ROASC 

CC'H")  T^€H   1370 

1380  ?  CHR*(R)  =  RETURN 

1400  CLOSE  #1=?  "Depress 

driMe." 

1418  ?  :?  "Press  any  key 


C>0  THEH  RETURN 
C>3  THEH  RETURN 
C>9  THEN  F£TURH 
OS  THEH  RETURN 
C=2  im\  C=1=ST 

#1.X$:TRAP  4000 
THEH  C=2  =  R£T1JR 


<"Y">  Am  ROAS 

ISTOPl  on  tape 
to  continue. . ." 


999  liOSUB   1349 ^  ?  "  1  ITtM  1 " .-  INPUT   1$  ^  li-   I 
$="£■'   THEN  940 
1890   I-   I$=''D''  THEN  RETURN 
1019  ■^-  "  i  HAKE  r' ;  aNPUT  l'i*=IF  m="E"  THEH 
949 

;'"lrf'UT"n$:IF  []$=''£'■  THE 


1939  ':'  "  iriOuhi 


19c9  l!^  i'i$= 

h'948 

1949  ] 

1359  ?  "!SEP:ALs■^lDi'■-I^4PUT  s*:IF  Sf="E 

"  T^H  949 

1869  IF  S$="lI''  THhH  RE !  URN 

1979  ^"  "iOATE  rCQ'DI   ( MONTH '^iHY--VEHR:i  "■■> 

aHPUT_D^IF  D*="E"  THEN  348 

1989   Ih  Uf="D"_THEN  RETURN 

1998  ?  ■MIUALUt:    '';  ar-FUT  UiaF  U-t="E"  T 

1199   IF  U$="D''  THEH  RETURN 

i    1    4   ~j       |~ ."■"■!  1~        1   I   .i  l"    .    "i-u-'i  i.-,       4-7 .<  Tj 

lliU     buZ-*JD     1  i'4->J  ■ 'jsjD'jb     i-i'tt 

1129  ?  "Is  this  entry  correrf^"  1  rGOSilB  1 
369 :  IF  R=ASC<"N=\)  THEH  949 

1130  C=i: RETURN 
1149  ■':   "{CLEAR;"; 

1159  ■"■  ^'ilTEni  ■■    M$-?  "irlAKEh    ";Uf 

1160  Y  MMODELi:   ";I1*^?  'MSERIALii^-IOP   " 
;S^ 

1179  ?  "iDATA  ACQ' Op   ^0$..  "lUALUEi  ^    ";U 

$:?   : RETURN 

1188  X$=I$:ijOSUb  1289 : K$=W$ : GOSUB  1290 ^K 

i-\-i-$ :  GOSUB  1286 

1199  X$=S$:  GOSUB  1299  0-^i=D* :  GOSUB   1280  ^X 

i=U$ 

1289  PRINT  #1;X$ 

1219  RETURN 

1229  GOSUB  129S:I$=X$:IF  OS  THEH  RETURN 


1448  GET  #2.-R:F£TURH 

1460  ?  :?  "HIT  mi  KEf  TO  CWTIUJE.-   D=DO 

\E" 

1479  GOSUB  1440:?  "OK": RETURN 


W/ngrr        ^mm^/Ajs 


*  Easy  la  lejfn  *ilPi  60     po*erfu!  cammanCs  ViC 

*  OOuDiA  d«nsi|y  gtapriics   la'ge  nunlDer  a'5[ii4)'-  SOu"iJ' 

•  gcomplHH  prc^r*mi  hT-Ciud-Jia     BiMkom    Sp3C8W»r,  Anii.  U  F  O    Mazt 
»    P£HC6M  »Bfli5n  lO'  OLD.'NEWM0  flOMs  and  BK  o' memorr 

w    VliC  "e'lion  hii  coloi  *nd  cnnartctO  SOijidl'fq   3K  memor-j  eipandflr} 

#  CompFBheiKvtM  wgaminuJl  US4CAN*0*  FOHEIGN 
VI&lLloF  PE1l^vlCw'3o4Pne9on  caiiane(di^SNGii6add  13  00)  Mb  HO 
ViaiL.  Us«r » Manual  iialundablcr  wiin  SOHvrare  Qf^eO  HO  1^? 
VIGIL  Inigrprjlai  Lialing  i6M2  AastJnbLet  UriQuagg) 


PET/CBM 


Tiny  babic  compiler    - 


PET 


A  Ifue  comptler  inal  tuins  yeu'  BASIC  pogfam  inio  lasi  machine  code 

*  Subset  oF  PET  BAStC  complies  lo  5502  machine  code  Reg  only  BK  (rtemoty 
n    Has  TuM  flcaiin.g  ooini  capabilities  ana  lunclions 

*  Compiitr  iismngi  available  Mith  IGK  ve'i'a^  Imciude^ll 

*  Can  load  CompiF*a  i^achme  code  anyrtne'e  in  memofv 

*  Ofl  £i*aaite  ladd  S3  00  tor  flisiietie>  USB  CANADA  FOfElCN 
TIN'V  B*sic  Compilei  OLD^NEWMO  POMS-SOii  wnw  8K  memoiy    JJS  S30 
TIKV  Basic  Us*r  S  Manu*'  [rtlunMDit  -riin  *oic*ar*.  ofden              I  5  %   J 


PET  A  APPLE  tl  USEAS     TiNY    PaSCAL 

Siruciurad  iii^guage  anefnaiiiit  to  basic  ta;  pet  a'  APPLE  ii  mciudti 

*  LINE  EOnOFt     creates   moOities  and  manii.ni  soufce  ijnguige 

*  COMPILED     con*erl5  jour  tource  to  an  eiecutdDle  P  ccrfle  icuma; 

*  IKTERPBETEB     ciecuies  complied  FcDfle    Featurps  Cum  ir  TRACE 
«F    CASEOF   WHILE  DO,  IF-TMEN  ELSE   REPEAT  UNTIL,  FOR  TDOOWNTO.  PBOC.  FUNC 

*  G(»ch"CJ  »«i»JOn  has  mare   GHaPHiCS,  PLOT    POiNT   TEXT   INKEV    AB5   SQH 
APPLE  II  his  ICire«  &  fiiresCOLOfl   HGRAPHtCS.  t^COLDR   HPLOT.  PQL  and  TONE 

LJ£  4  CANADA  FOFtEIGN 
TiNy  Pascal  PLUS     GRAPHICS  PET  32K  NEwa  0  fiOMS'SOJi'a-shiUlt  IM  *55 

Tir^V  Pascal  PIUS     GRAPHICS  PET^ZK  NEWJ4  0  FlDM5'B033fc:BStoltB  SS5  UC 

TIK^f  Pascal  PLUS    GRAPH  ICS  APPLE  ii  <BK  and  DOS  3  20  3  JM 

TINY  Pascal  NON  GRAPHICS  PET  i6K*32i^  NEVV  0  ROMS  dnhellf         J35  JaO 

TiMVPaaCaiNON  GRAPHICS  PET  i^K.'^^JK  N£W.'4  0  ROMS  casaelta       UG  I'S 

TINV  Pascal  User  s  Manual  iralundable  wi^h  aollwari  Order]  (1Q  SlZ 

TINY  Pascal  6M7  Inlarprater  Lillmg  GRAPHICS  ^e'son  1J5  JJO 


PIPER-THE  MUSIC  MACHINE 

Here's  the  jimolest  w*y  yet  lo  compoM.  concuct  ana  play  muaic  on  yowr  VIOPET. 
Complaifl  music  capability  —  play  eii  note  values,  iisi  ana  tdil  youf  music, 
lasiiy  har^ai«  repflats  and  resis  Wnnen  in  faisl  ma[;riine  larguaQe  Includes 
»mi}iQ  composlions  and  martuai  VIC  version  does  not  leouire  additional  mamofy 
PET  versiO'i  Feaui'Q}  cutprnal  CB2  speaker 

US   1  CANADA  FOREIGN 

PIPER  Ql  PET/VIC  on  cftsaeite  {add  S3  00  lor  disketie)        t2h  S30 

pipEM  User's  Manual  [rfilundabie  wiirtsollware  ofdei]       ii  S7 

PIPEH  6502  Assembly  Usting  S25  »30 


PET       MACHINE       LANGUAGE       GUIDE 
Now  <n  lis  ninjh  piiniino  Loam  ine  riidden  lalenia  of  your  OLD.  NEW  oi  <  o  ROM 
PET/CBM  vvilh  this  easy  lo  follow  marual.  Oaiaiia  30  ol  Ihe  PET's  Oiriltin  roulmes 

US  &  CANADA  FOREIGN 
PET  MACHINE  LAGUAGE  GUIDE  lof  OLD,  NEWor4GflOM£  S9  $11 


Ordvri  prepaid  In  U.S.  Dollari.  VISA.  MC.  ACCESS,  tic  Prlcva  Include  poalifl*. 


"  ,  a 

13  tn 

a.  « 


10 

10 

I 

r 
U 
01 

(0 


■ 


NEECO 


WHY  BUY  FROM  THE  BEST? 

Service.. .  Support. . . 
Software.. . 


o 


MULTI-CLUSTER 

For  Commodore  Syslems-  allows  3 
CPU  s  (Expandable  to  81  to  access  a 
srngle  Commodore  Disk 

MUlTI-CLUSTER(3CPUsi S  995 

Eacn  Afldiiional  CPU  lup  lo  8i  . .  S  250 


EPSON  PRINTERS 

MX-80  PRINTER $  645 

MX-80  FT $  745 

MX-lOO $  945 

MX-70  $  459 

INTERFACE  CARDS 

3141  (RS-232) S    75 

8150  (2K  Buffered  RS-232) $  150 

8161  (IEEE  488) $    55 

8131  {Apple  Card)  $    85 

8230  {Apple  Card)  $    25 

8220  (TRS-SO  Cable) $    35 

DIABLO  630  PRINTER 

DIABLO  630  ■  Serial  ■  RS-232 S2710 

Tractor  Option  $  250 


^ti  commiodore 

16K  B  (16K  RAM-40  Column)  -  Lim.  Qty  $  995 

32K  B  (32K  RAM-40  CIm.)  -  Lim.  Qty $1295 

4016  (16K  RAM4.0Basic-40Clni.) $995 

4032  (32K  RAM  4.0  Basic-40  CIm.) $1295 

8032  {32K  RAM  4.0  Basic-eO  CIm.) S1495 

8050  Dual  Disk  (1  Meg  Storage)  $1795 

4O40  Duai  Disk  {343K  Storage) $1295 

8010  IEEE  Modem $  280 

C2N  Cassette  Drive  $   75 

CBM  -  IEEE  Interlace  Cal:le  $    40 

IEEE  -  IEEE  Interface  Cable $    50 

VIC  20  Home/Pefsonal  Computer $  295 


CALL  NEECO 

FOR  ANY  OF  YOUR 

COMMODORE  COMPUTER  NEEDS 


NEC  SPINWRITER  PRINTERS 

5530  {Parallel) $3055 

5510  {Serial)  $3055 

5520  (KSR-Serial) $3415 

Tractor  Option S  225 


APPLE 

16K  APPLE  II*  $1330 

32K  APPLE  W*  $1430 

48K  APPLE  IK  $1530 

APPLE  DISK  w/3,3  DOS  .  S  650 

APPLE  DRIVE  Only $490 

APPLE  IIM28K- In  Stock! 
w/Monitor  ♦ 
Info  Analystpak $4740 


AMDEK  MONITORS      INTERTEC  COMPUTERS 


Video  100  ir  B+W S  179 

Video  300  ir  Green $  249 

Color  1 13'  Low  Res $  449 

Color  I1 13'  High  Res $999 


II    fW^^^^^^ 


64K  Superbrain 

(360  Disk  Storage),  CP/M™ . . .  $3495 
64K  QD  Superbrain 

(700K  Disk  Storage),  CP/M". .  $3995 


*CP/M  is  a  registered  trademark  of  Digital  Research 


ATARI  COMPUTERS 

Atari  400  (16K  RAM)   $  399 

Atari  800'  (32K  RAM)  -  good  thru  8/31 $1080 

Atari  410  RECORDER  $    89.95 

Atari  810  DISK  DRIVE $  599.95 

NEECO  carries  all  available  ATARI  Software;  and  Peripherals. 


PROFESSIONAL 
SOFTWARE 

WordPro  1  8K $    29.95 

WordPro  3  (40  Clm.)16K  , . . .  $  199.95 

WordPro  3* S  295 

WordPro  4  (80  CIm.)  32K  . . , .  $  375 
WordPro  4* $  450 


JUST  A  SAMPLE  OF  THE  MANY  PRODUCTS  WE  CARRY.  CALL  US  FOR  OUR  NEW  6D-PAGE  CATALOG. 
WE  WILL  MATCH  SOME  AOVERTISEO  PRICES  ON  CERTAIN  PRODUCTS  LISiTED  UNDER  SIMILAR  "IN  STOCK"  CONDITIONS. 


NEECO 

679  HIGHLAND  AVE. 
NEEDHAM.  MA  02194 


(617)449-1760 

Telex:  951021 


MON-FRI  9:00  -  5:00 


MMterCharg*  and  VISA  Accepted 


NEECO 


INTRODUCES  THE 
CBM  VIC-20 
COMPUTER! 


Ok  Commodore 
breaks  the 
computer 
price  barrier 

$299.95 


CBM  VIC-20 
PERSONAL 
COMPUTER 


VIC-20  SPECIFICATIONS 

•  8  colors  -  built  in 

•  sound  generation  -  built  in 

•  programmable  function  keys 

•  5K  memory  expandable  to  32K 

•  standard  PETBASIC  in  ROM 

•  full-size  typewriter  keyboard 

•  graphics  character  set 

•  plug-in  program/memory  cartridges 
0  low-priced  peripherals 

•  joystick/paddles/lightpen 

•  self-teaching  materials 

•  WORKS  WITH  ANY  HOME  TELEVISION 


$74.95 


C2N 

TAPE  CASSETTE 
DRIVE 


CALL  NEECO  TODAY  FOR  ADDtTIONAL  VIC-20  IHFORMATIOM  .  .  . 

As  the  CBM  VIC-20  Is  a  'new'  product,  prices  and  specifications  are  subject  to  change  w/o  notice 


li 


NEECO  WILL  MATCH  ANY  ADVERTISED  PRICE  ON  CBM  EQUIPMENT 
FROM  ANY  OTHER  COMPANY  WITH  PRODUCT  IN  3T0CK. 


NEECO 

(617)449-1760 

679  HIGHLAND  AVE.                Telex:  951021 
NEEDHAM.  MA  02194 


MON-FRI  9:00  -  5:00 
MasterCard  and  VISA  Accepted 


36 


COMPUTEI 


Febfuoiv,  1'82  Issue  21 


Creating  A 
Simple  Word 
Processor 


Steve  Gradijan 
Carrollton,^ 


Editor's  Noie:  Willi  minor  adjushni'nis,  this  simple  {but 
effective)  word  processor  unU  work  on  Apple,  OSl,  -  any 
Microsoft  BASIC.  Described  here  for  the  PETICBM,  the 
author  points  out  which  lines  to  change  Jor  other  machines. 
The  program  is  well  doenmeuled  to  permit  easy  adjustment 
to  a  -iiariety  of  printer,  disk/tape.  etc.  configurations. 
—  RTM  ' 


Arnie  Lee's  LED  a  Line-oriented  Text  Editor 
clescii])ed  in  COMPUTEI  #9  can  become  a  modcr- 
ateiy  sophisticated  u(jrd  pi-otessor  with  the  addition 
of  a  few  lines.  Line  5  enables  upper  and  lower  case 
features  of  the  PET;  line  8075  fliscngages  these 
i'eatures  and  returns  the  i^ET  to  normal  mode. 
Minor  modification  to  tine  9050  eliminates  the 
piintingofthe  LKD's  line  oiiented  identification 
numbers  and  allows  Commodore  printers  to  print 
both  upper  and  lowercase.  The  addition  of  the 
control  character  to  the  strini)  rei cried  to  in  this 
line,  however,  uses  one  position  of  the  80  character 
string  Hmiting  the  text  part  of  the  string  to  79 
characters,  including  spaces.  Thus,  Mr.  Lee's  80 
character  string  is  shortened  in  line  10055. 

Adding  Versatility 

Additional  program  lines  give  the  word  processor 
more  versatility.  Tab  fimctions  or  line  indentation 
and  simulated  line  feed  aix-  accom|jlished  bv  lines 
145,  146,  and  10045.  Lines  9025  and  9055  provide 
the  option  for  double  spaced  print  of  copy  to  the 
printer. 

Lines  235  and  2 1000  to  2 1 100  set  the  margins. 
If  the  margins  are  not  .set  ai  llic  beginning  of  a 
typing  session,  the  program  defaults  U)  a  79  char- 
acter line  i.e.  no  margins.  Lines  500.  520,  530,  and 
570  are  modified  to  accomodate  the  additional 
command  "s, "  set  margins. 

A  "bell"  is  provided  to  prompt  vou  when  only 
five  spaces  are  left  in  a  line  (lines  22000  to  22040). 
It  makes  use  of  the  ■'Cli-2  sound  "  provided  al  the 
user  port  and  requires  connection  of  a  suitable 
amplifier/speaker  to  the  V\\\ . 

Lines  5  and  8075  are  not  necessary  with  the 


Commodore  (jBM's.  The  upper-lower  case  and 
hell  fimctions  u.sc  POKE  statements  not  compatible 
with  otlier  computers.  However,  all  olher  modifi- 
cations should  be  usable  with  machines  using  Micro- 
soft BASIC. 

Option*.  And  Commands 

Additional  commands  now  available  include  "s" 
which  allows  setting  margins,  "n"  establishes  a  79 
character  line  and  no  martjins;  "s"  creates  five 
character  wide  left  and  right  margins  and  a  69 
character  wide  field;  "m"  increases  the  size  of  the 
margins  to  ten  characters  and  the  "I"  to  fifteen 
characters  in  width,  "o"  allows  creation  ol  your 
own  margins,  both  left  and  right.  You  are  asked  lo 
specify  the  length  of  both  the  left  and  right  margins. 
If  you  forget  to  .set  the  margins  at  the  beginning  of 
the  program  the  margins  will  default  leaving  vou 
with  a  79  character  line.  Once  set,  margins  may 
later  be  lenglhciied,  but  never  shortened! 

'flie  sub-commands  "(a  "  and  "(«  '"-I-  RE  f  URN 
provide  I  ah  functions  and  line  skipping.  The  sub- 
command "(a  "  adds  five  spaces  to  the  text  siring 
and  is  useful  as  a  tab  or  an  indent.  It  may  be  used 
al  any  time  wliile  in  a)ppend,  i)ndent,  or  r)eplace 
functions.  To  skip  a  line  of  text,  type  "(a  "  followed 
by  the  RETURN'  key. 

The  option  lo  print  the  text  either  single  or 
double  spaced  is  given  after  requesting  the  print 
Itinction  p)rint. 

file  PET  kevljoard  will  beha\'e  like  a  normal 
typewriter  after  modifying  the  LED  j^rogram.  fhe 
shilt  key  will  |)rovide  uppercase.  Al!  punctuation 
and  deslgiialors  supplied  bv  the  PEl^  (  haracler  set 
are  available  exce|)t  {a  ,  which  is  used  for  lab  iunc- 
lions.  Quolation  marks  are  permitted,  but  they 
look  a  little  strange  when  first  seen  on  the  C:RT 
screen  ol  the  PET.  Ignore  the  funny  appearance 
of  anything  thai  vou  enclo.sc  in  quotes  and  depend 
upon  the  "bell "  lo  determine  the  v\m\  oi  (he  line. 
F.verything  within  quotes  will  appear  normal  when 
later  listed,  printed,  or  saved! 

Delete  lines  9070  through  9090  from  Arnie 
Lee's  Ol  iginal  program  and  you  are  ready  lo  ivpe  a 
letter,  an  order,  an  article  for  COIVIPUTE!  or 
whatev(;r. 

0:LIST 
0  REM  LINE  EDITOR  (C) 1980  ABACUS  ~ 
SOFTWARE 

3  REW    FROM    FEBRUARY  1981  COMP 

UTE 

4  RElv.    MODIFIED  BY  STEVE  GRADIJA 

N,  CARROLLTON,  TEXAS 

5  P0KE59468,14:REM   ENABLE  UPPER  "" 

S,  LOWER  CASE 
10  DIMT$  (500)  :  REfl  BUFFER  SPACE 
20  L$=""::REM   CURENT  LINE 
30  LL=1:REM  LAST  LINE  # 


JINSAM 

Data  Manager  selected  by  NASA,  Kennedy  Space  Center 


SAVE  TIME!  SAVE  MONEY! 

JINSAM  saves  taxpayers 

lOO's  of  thousands  of  $ 

"Much  more  powerful  than 
you  can  imagine!" 

Robert  Baker 
Kilobaud  Microcomputing 


JINSAM  is  an  integrated  system.  It  makes  it 
easy  to  use  your  information  to  its  fullest.  No  more 
will  hundreds  of  valuable  hours  be  spent  searching 
or  analyzing  needed  information  nor  re-entering 
information  for  various  reports. 

JINSAM  transforms  your  desk-top  computer 
into  the  "state  of  the  art"  data  processing  machine 
with  features  and  accessories  found  nowhere,  even 
at  10  times  the  price.  NASA,  Kennedy  Space 
Center  selected  JINSAM  8.0  and  saved  approxi- 
mately $95,000  over  other  software/hardware 
costs.  Riley  County,  Kansas  also  selected  JINSAM 
8.0  and  saved  approximately  $90,000  over  other 
software/hardware  costs. 

JENSAM  is  designed  for  you.  It  is  forgiving.  It 
has  help  commands  for  every  option,  available  at 
the  touch  of  a  button.  The  amount  of  infonnation 
you  store,  its  structure  and/or  your  hardware  can 
change  but  your  data  won't  have  to  be  re-entered. 
Recovery  utililes  are  included  even  for  calaslrophes. 
security  passwords  are  built  in  for  privacy,  simple 
ediling  and  entry  includes  auto  recall,  and  deleting 
records  is  easy  and  the  space  is  reclaimed.  J  INS  AM 
includes  TWO  FREE  accessories  for  reports  and 
labels.  You  have  unlimited  report  formats  with 
summing  and  lined  up  decimals  and  the  label  printer 
prints  up  to  5  across  -  any  sire  and  even  allows 
single  envelopes  or  index  cards. 

JINSAM  1 .0  allows  fast  and  easy  file  handling, 
manipulation  and  report  generation  for  any  CBM 
computer  witli  CBM  2040  disk  drive.  It  features  a 
menu  for  ease,  has  encrypted  passwords,  3  deep 
sorts,  .5  to  3  second  recall. 

JINSAM  4.0  for  CBM  4000  series  adds 
JINSORT,  user  accessible  machine  son  of  1000 
records  in  15  seconds;  compaction/expansion  of 
information,  automatic  list  maintainance,  unlimited 
number  of  fields,  unlimited  record  length  and  much 
more. 

JINSAM  8.0  for  CBM  8000  series  has  all  4.0 
features  plus  unlimited  sort,  horizontal  format,  and 
search  by  key  or  record  number. 

JINSAM  8.2,  NEW  FOR  '82  expands  8.0 
capabilities  by  adding  information  search  by  word, 
key  or  record  number  and  machine  language  print, 
format  and  manipulation  routines. 


•  CUSTOM  DATA  FILES 

•  CUSTOM  REPORTS/LABELS 

•  KEYED  RANDOM  ACCESS 

•  FAST/EASY/MENU  DRIVEN 

•  MULTIPLE  SEARCH  KEYS 

,  •  PRIVACY  ACCESS  CODES 
I  •WILD  CARD  SEARCH 


JINSAM  EXECUTIVE'  version  {soon  to  be 
released)  is  our  most  powerful  professional  system 
for  the  CBM  8000  and  9000  series.  Executive  will 
have  8.2  extended  feattjres  plus  allow  multiple 
users  with  in-use  lockout  protection,  executive 
command  files,  automatic  math  relations,  join, 
merge  or  link  files,  greatly  increased  record  capacity 
and  machine  information  search  by  word,  as  well 
as  by  key  or  record  number  and  many,  many 
more  features. 

There  are  currently  7  more  interfacing  modules  - 
and  more  underdevelopment,  including  independent 
interfaces  between  JINSAM  and  business  pack-, 
ages  for  yourG/L,  A/R,  A/P  needs.  We  announce 
the  availability  of  modules  and  enhancements  in 
JINSAM's  quarterly  newsletter. 

WORDPROPACK  -  Intelligent  imeri'ace  for 
WordPro  3,  3-1-,  4, 4+,  creates  lists  of  infonnation 
from  JINS.AM  files.  It  allows  up  to  10  conditions 
based  on  each  item  of  information.  Produce  indi- 
vidualized letters,  report  cards,  special  reports, 
checks,  invoices,  etc- 

MULTI-LABEL  -  Prints  multiple  labels  per 
record  with  up  to  2  lines  for  messages  and 
consecutive  numbering.  Produce  inventory,  caution 
ial)els,  bulk  mail  labels,  etc. 

MATHPACK  -  global  calculator/editor  -t-.  -, 
*,  /,  by  another  field  or  constant;  null  (remove 
contents)  of  a  field  or  replace  contents  of  a  field 
with  any  word,  number  or  phrase.  Sum  multiple 
fields  in  each  record  or  running  sum  of  single  field 
in  all  records.  Extract  information  or  effect 
permanent  change.  Replace  in  the  same  field  or 
place  in  a  waiting  field. 

DESCRIPTIVE  STATPACK  -  Determine 
MEAN,  MEDIAN,  MODE,  STANDARD 
DEVIATION.  VARIANCE,  RANGE.  Generate 
HISTOGRAMS  from  1  to  25  steps,  and  produce 
Z-SCORE  reports. 

.ADVANCED  STATPACK  -  {You  must  also 
acquirt;  DESCRIPTIVE  STATPACK)  Generate 
one,  two  or  tiiree  way  CROSSTABS  (number  of 
occurance)  CHI  SQUARE,  LINEAR  RE- 
GRESSION, with  graphic  representation  and 
prediction,  LINEAR  CORRELATION  and 
SIMPLE  ANALYSIS  OF  VARIANCE. 

CALCPACK  -  2  way  interface  to  VisiCaic  or 
any  user  program.  It  Sets  you  use  VisiCaic  for 
complex  manipulation,  editing,  placing  results  in 
JWSAM  for  sorting,  storing  or  moving  data  to 
WordPro  as  well  as  giving  the  ability  for  exchange 
with  your  own  applications. 

INTERAC  -  Interface  which  can  read  VisiCaic 
files.  WordPro  files  and  almost  any  sequential  files 


to  build  JINSAM  databases  automatically.  For 
example;  Vou  could  "download"  infonnation  on 
holerilh  cards  to  sequential  files  and  INTERAC 
would  place  them  into  JINSAM  files. 

All  accessories  are  accessed  thru  the  JINSAM 
menu  and  require  security  password  to  gain  entrance. 

JINSAM  gives  you  FREEDOM  OF  CHOICE. 
Start  with  JINSAM  I.O  and  upgrade  hardware 
and  data  at  any  time.  Choose  from  accessories  at 
any  time.  The  JINSAM  Newsletter  brings  the 
latest  updates,  user  input  and  uses  and  keeps  an 
eye  on  the  futiu'c. 

JINSAM  stands  alone  by  placing  "a  lot  of 
potential  computing  power  in  one  integrated 
program  package"  (Fred  Klein.  Ferson  div.  of 
Baiisch  &  Lomb).  "The  JINSAM  package  is 
jusliiitaiioii  lor  buying  a  system  no  matter  what 
the  h-ndware,  be  it  Vector  or  Commodore  or 
whatever  the  sysien>"  (Larry  Colvin,  Micro 
Computer  Systems).  It  is  a  "grandfather"  in  this 
voiing  field. JINSAM  EXECUTIVE  will  be  the 
third  generation  in  development.  AllJINSAM 
systems  arc  sophisticated  and  flexible  yet  easy  to 
use.  JINSAM  is  saving  its  users  valuable  time 
and  money  in  government,  educational  and 
research  institutions,  business  and  industry- 
worldwide. 

JINSAM  is  a  Commodore  approved  product. 
Sec  your  local  dealer  for  a  demonstration. 


JINSAM  ii  a  oidcmark  of  JINI  MJCRO-SYSTEMS,  Inc. 
WordPro  IB  a  trademark  of  FTT}f««xioiul  Software,  Inc. 
VisiCaic  is  a  tiademark  of  Professional  Software,  lac. 
CBM  in  a  IradrmaHc  of  Commodore  Business  \fachines,  lac. 


JINSAM  Data  Manager 

.  Additional  Information  and  nearest  dealer 
.'.  Newsletter  Subscriptiat  ($5  US/$8  Woridwide) 
..  JINSAM  Demo Disk($I5,plusshiRjing&tax) 
.  .  User's  Guide  (S40.00,  plus  shipping  &  tax) 


Please  send  to: 
Name 


Position  _ 

Company 
Address  _ 


City,  State,  Zip  _^_ 

Phone  (      )    

Computer.  Disk 

.^plication 


JINI  MICRO-SYSTEMS,  Inc. 

Box  274C  •  Kingsbridge  Station 

Riverdaie,  New  York   10463 

(212)  796-6200 


Dealer  Inquiry  Welcome 


3B 


COMPUTE! 


Februa[V,W82.  Issue  21 


"L) 1ST  LINE(S) 
"M)ENU  DISPLAY 
"P)RINT  LINES(S) 
"Q)UIT  LINE  EDITOR 
"R) EPLACE  LINE 
"S)ET  MARGINS 

ENTER  SELECTION 


40  SP§="  ":DL$=CHR$(20) 

45  M=79:REM  DEFAULT  TEXT  STRING  LE 

NGTH 
50  EE=0:REM  DISKERRROR  CHANNEL  CLO 

SED 
60  PR=0 
90  REM  POKE144 ,49:REM  DISABLE  STOP 

KEY 
100  PRINT"  [CLEAR}       {REVJABACUS  S 

OFTWARE  LINE  EDITOR" 
110  PRINT" {02  DOWN}     FUNCTIONS:" 
130  PRINT 
140  PRINTTAB(8) ; "A) PPEND-TO  END  OF  " 

TEXT" 
145  PRINTTAB{10) ;"@  =  5  SPACE  TAB" 
145  PRINTTAB(10) ; " @+ { REV } RETURN { OFF 

OFF}  =  SKIP  LINE 
150  PRINTTAB(8) ;"C) HANGE-STRING 
160  PRINTTAB(8) ; "D) ELETE  LINE(S) 
170  PRINTTAB(8) ; "F) ILER  COMMANDS 
180  PRINTTAB{8) ; "I) NSERT  BEFORE  LIN 

E 
190  PRINTTAB(8) 
200  PRINTTAB(8) 
210  PRINTTAB{B) 
220  PRINTTAB(8) 
230  PRINTTAB(8) 
235  PRINTTAB(8) 
240  PRINT:PRINT' 

->    "; 

250  GOTO510 

500  PRINT:PRINT"{REV}ENTER{OFF}  A,C 
,D,F,I,L,P,Q,R,S,M)ENU->"f 

510  GETA$:IFA5=""THEN510 

520  J=0:FORI=1TO11 

5  30  IFA$=MID$ ("ACDFILRMQPS" ,1,1) THE 

NJ=I:I=11 
540  NEXTI 
550  PRINTA$ 
560  IFJ=0  THEN500 
570  ONJGOTO10  00,20  00,3000,4  000,5000 

,6000,7000,100,8000,900  0,2 

1000 
1000  PRINT 
1005  PRINT" (REV}APPEND{OFF}  TO  END  0 

F  TEXT" 
1010  PRINT:PRINT  LL">"; 
1020  GOSUB10000 
1030  IFLEN(L5)=0THEN500 
1040  T$  (LL)=L$ 
1050  LL=LL+1 
1060  GOTO1010 
2000  REM  CHANGE  STRING 
2010  PRINT:PRINT" ( REV} CHANGE { OFF} "  ;  : 

GOSUB16000 
2020  IFHI=0THEN500 
2025  PRINT" {REV}CHANGE{OFF}  STRING-> 

"; :GOSUB10000 
2030  L=LEN(L$) 
2040  IFL=0THEN500 
2050  IFL<4THEN2000 

2060  DM$=LEFT$ {L$,l) :REM  DELIMITER 
2070  IFRIGHT$(L$,1) <>DM$THEN2000 
2080  J=0:FORI=2TOL-1 
2090  IFMID$(L$,I,1)=DM$THENJ=I 


2100  NEXTI 

2110  I?J=0THEN2000 

2120  IFJ=2THEN200  0 

2130  FR$=MIDS  (L$,2,J-2) 

214  0  IFJ+1=LTHENTS$="" :GOTO216  0 

2150  T:;$=MID$  (L$,J  +  1,L-J-1) 

2160  F=LEN(FR$) 

2170  F0RI=L0T0HI 

2180  T=LEN(T$ (I) ) :S=1:NLS="" 

2190  F0RJ=1T0T-F+1 

2200  I?MID$ (T$ (I) ,J,F) <>FR$THEN2230 

2210  NL$=NL$+MID$ (T$ (I) ,S,J-S)+TS5 

2220  S^=J+F:J  =  S-1 

2230  NEXTJ 

2240  IFS<>1THENNL$=NL5+RIGHT$ (T$ (I) , 

T-S+1) :T$  (I)=NL$ 
2250  NEXTI 
2260  GOTO500 
3000  REM  DELETE  LINES 
3005  PIUNT:PRINT" {REV}DELETE{OFF}  "; 

:GOSUB16000 :REM  GET  RANGE 

3010  IFNOTDFTHEN3015:REM  NOT  DEFAULT 
ON  ENTIRE  FILE 

3011  PRINT"{REV}DELETE{OFF}  ENTIRE  F 
ILE?  "; 

3012  GETA$:IFA$=""THEN3012 

3013  PRINTA$:IFA$="N"THEN500 

3014  I?A$<>"Y"THEN3011 

3015  IFHI>LL-1THEN500 

3020  I?HI=LL-1THENLL=LO:GOTO500 

3030  J==HI-L0+1 

3040  F0RI=L0T0LL-J-1 

3050  T$ (I)=T$ {I+J) 

3060  NiXTI 

3070  LL=LL-(HI-L0) -1 

3080  GOTO500 

4000  R3M  FILLER 

4010  PRINT" {DOWN} {REV}FILER{0FF}  ENT 

ER  L)0AD  OR  S)AVE->  ; 
4020  GETA$:IFA$=""THEN4020 
4  030  I.?A$<>"L"ANDA$<>"S"THENPRINT:G0 

TO4000 
4040  PRINTA$:M$=A$ 
4050  PRINT" {REV}ENTER{0FF}  FILENAME- 

>  "; 

4070  G3SUB10000 

4075  IFLEN(L$)=0THEN500 

4076  IFLEN(L$) >12THEN4050 
4080  FI$=L$ 

4090  PRINT" [REV}ENTER{0FF}  D)ISK  OR  ~ 

T)APE->  "; 
4100  GETA$:IFA$=""THEN4100 
4110  PRINTA$ 

4120  IFA$<>"D"ANDA$<>"T"THEN409  0 
4130  IFA$="D"THEN4160 
4140  IFM$="L"THEN4400 
4150  GOTO4200 
4160  DRS="":IFLEFT$ (FI$,2) <>"0:"ANDL 

EFFT$ (FI$,2) <>"! : "THENDR$= 

"  0  :  " 
4170  GOTO4600 
4200  REM  TAPE  SAVE 
4210  IFLL=1THENPRINT"N0  FILE  TO  SAVE 

":GOTO500 
4220  CPEN2,1, 2, FI$+". SOURCE" 


February.  1'?e2.  Issue  21 


COMPUTE! 


3<? 


4230    F0RI=1T0LL-1 

4240    F0RJ  =  1T0LEN(TS  (I) ) 

4250    PRINT#2,MID$ (T$  (I)  ,J       ,1); 

4260    NEXTJ 

4270  PRINT#2,CHR$ (255) ; 

4280  NEXTI 

4290  CL0SE2 

4300  PRINTSPC(6) ; FI$;"   SAVED" 

4310  GOTO500 

4400  REMTAPE  LOAD 

4410  OPEN2,1,0,FI$+". SOURCE" 

4430  LL=0:REMLINE  COUNT 

4440  LL=LL+1:T$  (LL)="" 

4450  GET#2,AS 

4460  IFST=64THEN4500:REM  END  OF  FILE 

4465  IFSTO0THEN  PRINT"***  LOAD  ERRO 

R  ***":GOTO500 
4470  IFA$=CHR$ (255)THEN4440:REM  END  " 

OF  LINE 
4480  T$(LL) =TS (LL)+A$ 
4490  GOTO4450 
4500  CL0SE2 

4510  PRINTSPC(6) ;FI$;"  LOADED" 
4520  LL=LL+1 
4530  GOTO500 
4600  REM  DISK  SAVE 
4610  IFM$="L"THEN4800 
4620  IFLL=1THENPRINT"N0  FILE  TO  SAVE 

":GOTO500 
4  6  30  FL$="@0"+DRS+FI$+".SOURCE,S,W" 
4640  0PEN2 ,8,2,FL$ 
4650  GOSUB20000:R£M  ERROR  CHECK 
4660  F0RI=1T0LL-1 
4670  F0RJ  =  1T0LEN(T? (I)  ) 
4680  PRINT#2,MID5 (T$  (I)  ,J,1)  ; 
4690  NEXTJ 

4700  PRINT#2,CHR$(255) 
4710  NEXTI 
4720  CL0SE2 

4  7  30  PRINTSPC(6) ; FI$; "  SAVED" 
4740  GOTO500 
4800  REM  DISK  LOAD 
4810  FL$=DR$+FI$+". SOURCE, S,R" 
4820  0PEN2,8,2,PL$ 
4830  GOSUB20000:REM  ERROR  CHECK 
4835  IFE1O0THEN500 
4840  LL=0:REM  LINE  COUNT 
4850  LL=LL+1:T${LL)="" 
4860  GET#2,A$ 
4870  IFST=64THEN4500 :REM  END  OF  FILE 

4880  IFST<<>0THENGOSUB20000:GOTO500 
4890  IFA$=CHR$ (255)THEN4850:REM  END  ~ 

OF  LINE 
4900  T$ (LL) =T5 (LL) +A$ 
4910  GOTO4860 
4920  CL0SE2 

4  9  30  PRINTSPC(6) ; FI$; "  LOADED" 
4940  LL=LL+1 
4950  GOTO500 
5000  REM  INSERT  LINE 
5010  PRINT:PRINT" {REV} INSERT{OFF}  BE 

FORE  "; :GOSUB17000:REM  GET 
LINE  # 
5015  IFLO>LLORLO<1THEN5000 
5020  PRINT:PRINTLO; ">"; 


5030  GOSUB10000:REM  READ  LINE 

5040  IFLEN(L$)=0THEN500 

5050  LL=LL+1 

5060  F0RI=LLT0L0STEP-1 

5070  TS(I)=T$ (I-l) 

5080  NEXTI 

5090  T$(LO)=L$ 

5100  L0=L0+1 

5110  GOTO5020 

6000  REM  LIST  LINES 

6010  PRINT:PRINT"{REV}LIST{OFF}  ";:G 

OSUB16000:REM  GET  RANGE 
6020  IFHI=0THEN500 
6030  SS$="N":PRINTtFORI=LOTOHI:REM  P 

ERFORM  LIST 
6040  PRINTI;">";T$ (I) 
6050  GETA$:IFA$=CHR$ ( 18 ) THENF0RJ=1T0 

1024:NEXTJ 
6060  IFA$<>CHR$(3)THEN6110 
6070  SS$="Y" 
6080  GETA$ : IFA$=CHR$ ( 13) THENSS$="N" : 

GOTO6110 
6090  IFASOCHRS  (32)THEN6070 
6100  GOTO6120 
6110  IFSS$="Y"THEN6070 
6120  NEXTI 
6130  GOTO500 
7000  REM  REPLACELINE 
7010  PRINT:PRINT" EREV}REPLACE{0FF}  " 

; :GOSUB17000:REM  GET  LINE* 

7020  IFLO>=LLORLO<1THEN7000 

7030  PRINT:PRINTL0,">"; 

7040  GOSUB10000:REM  RED  LINE 

7050  IFLEN(L$)=0THEN500 

7060  T${LO)=L$ 

7070  GOTO500 

8000  REM  QUIT 

8010  PRINT:PRINT"      {REV}LEAVE  EDI 

TOR-ARE  YOU  SURE?{0FF}  "; 
8020  GETA$:IFA$=""THEN8020 
8030  PRINTA$ 

8040  IFA$<>"y" ANDA$  <> "N " T  HENS  0  0  0 
8050  IFA$="N"THEN500 
8060  PRINT:PRINT"       {REV}**  END  L 

INE  EDITOR  **{OFF}" 
8070  POKE144,46:REM  ENABLE  STOP  KEY 
8075  POKE59468,12:REM  ENABLE  UPPERCA 

SE  AND  GRAPHICS 
8080  END 

9000  REM  PRINT  LINE 
9010  IFPR=0THENPR=4:OPENPR,PR 
9020  PRINT:PRINT" {REV}PRINT{OFF}  ";: 

GOSUB16000:REM  GET  RANGE 
9025  INPUT"NUMBER  OF  SPACES  BETWEEN  ~ 

LINES(l-2)  ";S1 
9030  IF  HI=0THEN500 

9040  F0RI=L0T0HI :REM  PERFORM  PRINT 
9  050  PRINT#PR,SPC(SP) "{DOWN}"+T${I) 
9055  IFS1=2THENPRINT#PR:REM  DOUBLE  S 

PACE 
9060  NEXTI 
9065  GOTO9100:REM   ***   TO  GET  RID  0 

F  JUNK  *** 
9070  PRINT#PR 
9080  PRINT#PR, "***"; LL-1;"LINES  IN  B 


DYNACOMP 


Quality  software  for. 


*. 


ATARI 

PET 

APPLE  II  Plus 


TRS-80  {Level  II)** 
NORTH  STAR 
CP/M  Disks/Diskettes 

(sc«  AvBilnbUity  box) 


CARD  GAMES 


uriitdfihf  MiinuCarld  jti  iti  litu|ini 
*r4  play  BACCARAT  *i  yout  kiiuic  <; 
in  I6K.  Rcquuci  i>m  jajmick 


rrkf ;  »1I.M  Cwhih/SU.'M  DUnir 
iiuiKll  ii  ihcX"'<i"i  obk  -.ih  qoT 


BACCAJlAT4AurioD^) 

r>iii  It  lilt  £iiiopciinc4ii]  fjunt  titiKh  ii  ihcfi 

lo  r^^'  ^^^  a^  Ciotijtinffr  Ip  jrE34|i  rif^t    Lf4ri 
lit»n  k,{ik>r  IdphKi  ind  nuicl)J9|  HMnd    Rlhi 

GIN  RUMMV  lApfk  Hl>t 

Tho  n  ih'T  bcM  DU£ra  fotnpuicT  inplnnniuui 
HIil£S  |rkpti£i  ve  luptfb   Wt^i  «iu  cu  b« 

POKE!  PARTY  (AniaM  for  M  rvapatml  INUn^  SirHCwtiH''n].H  Dkkior 

POKiR  PARTY  i|.«ilfi>pokrr  ».fruUih>n  t>4H4«nibc  book.  POKER,  b;  Chvald  JMoti^  Thtiii  the  RiDiKompfthcsttvr 
•  cruun  i.'kiili'biE  Tor  ir,icrtKnn|hdt[fi.  Thr  p«n>  nrauttiof  ymtnctl  ind  ui  olhrr  |cw>Pi><dI  pli|(fi  Ei^oriheir  t><*I'^ 
lyov  viLl  C#[  Ifr  kOOB  theiA*  h*\  t  didtffrtt  {VfuMlillTlr  la  Ittt  totra  at  ■  valrtni  [iraiifnul;  la  klult  pi  |a4  iindlT  VttHun 

PiMiKf  <■ri^  POKEJI  PAHrV  bt'v*  t^i"!  1°  <><*l  ripaai>r  fVK  icMfhi !  Apptc  tannK  tni  diUnic  vmioni  require  « 
12  K  lor  l«r|fl}  Apcilc  11 

Prk4:  St<.W  tiMitt/lll.tS  Dtiknu 

ib  j,nd  iiKmb.';)  liircuJic  rouUnei  provtdr 
U^IciMcrCriiwiue 


CRI8BAC;E  i.O  (TIUhH  only} 

T>iiiJi  iLrnpl>  the  bciE  ^rjbtufc  (Utic  ir 
rcni  II  vicJJ  111  lor  [h<  DoaKe  wuhjii  ic 


THOUGHT  PROVOKERS 

MANACMI^NT  SlMUl^TOR  {Awl.  N«nh  Slu«44  CP/M  ait^j  rvtn;  lt*t}t'M*titt  KU.M  Dtak^iu 

Th4  protTtm  I)  b^Kan  Hnllrni  ttwhini  loulit  v<U  na  iiifnuliurc  LTricllciiuil ),x[tk  Butd  iLpon  iiRiili[furapli.>(dti 
|ttdji.ir  bimikcu  icEkkiIi. cacti  piMjtt  at  uwn  (MilroLi  icwnpu}  »HKh  numjIuiuEtii  itti<t  pioiiucii.  Etiti  pUrctactmipiL 
10  ouip«rffirfti.tiuiCitipeiiiAn  be  uiiLrii  i«Uii^i,prk:n.  prbduiTtaonvoluDiri.,  RiaTk;ii.ri|.4.nO:<|iruxi  ^iprnjituTneic  The  mou 
liMcniirul  Tirm  a  ibe  one  wuh  ihc  hi|]inT  irock  pciw  <>hen  the  imuUuor  mdi. 

FUGHT  SIMULATOR  (Avdtbh  fof  ki  t«npilKnt  Prkt;  Sl7'HCuMnH''Sll.M  Ihtmr 

A  mliitiCiU>dicii[miivemi.lhnnitk'il  umulnnmoEiakc-olf.  (ll|^t  ind  lindini  The  p[i>|r«in  kiiilim KrodysitrkeqiiiEJOiit 
■nd  ih(  chuicUfiiiJci  ar«  rul  utfoi!  Voki  <in  pticitft  iniirunv'ri  appt^athn  and  naniaiior  (lung.  ifdMii^i  *ml  cocnpiit 
hridbn.!).  TFwnqtc  idvinnd  rlrcf  LMV+iMrf^orm  kiOFi,hi!r'r(»Ui.t»d  luniUr  MTobiiic  muieu'-cri-  Alihoufh  ihiipi^^ini 
donnoE  rmpfa>]f  inphici,  ii  b%  ricinniand  «n>  *ddKU>e  SKiBiiiuI^nirtfCkx*  m  COMPLiTROMCS   Ruiiiin  I6K  Atan 

VALDEZ  lAnlkbk  tar  dl  ciHap«lni»  Prtn:  (IS.M  CMtHifllt.H  Eltakttw 

VALDEZria  Lampn^Efi  tiniuUiiortat  uiip«fu«iltt  uvi^auaiiift  iMPfidt*  Vkiaura^oLnd  VaJdfj  NiincmtirnjpDpl  Al«»h4 
Ifttludrd  «  Ihii  umulilKwi  ii  ■  rnlnlK  aail  laEniHi*  Jl*   n    UAdanrnl  rwp-  pofiiom  tif  ^f^h  m*f  M  •wacd  unSf  Xht 

ihip'i  iIphinuinnK  r4dij  dupb)-.  Iht  moiitm  el  e)k  ihip  iiuelf  ti  ■crun.trlr  mwtdkd  mithnuEKiitt)  The  iimulittoa  tbo 
fOEtuRt  t  model  Iw  th<  tidal  pitterai  >4i  Ih*  irfioci.  ai.  •«11  tt  orhef  utrTic  fotiii'Cribi  LiAkrfi  Mii  dnftini  izrbnii;  Chui 
royi  courct  fiwn ibc  Gulfdf  ALaiU  Eti  VbImi  Huboi!  Iht  ibr  loftwurrfMC^-i  in  |q^f|i>iur  C'rrtigiKjpd  PcnotuJCwfi- 

BAOKGAMMOM  l.BCAuri.  North  SuraMl  CP/M  onlrl  n*!«i  H*.»SC»*»r»*-SLI.MI}«ik«fi 

Ihii  pcpfram  tr-ui  >pL(r  Mckf^mnqn  liilk  fid  ■"Jl  »|uj  i.rnp{9i-c  >our  (afr>t  A  hurnin  can<  ronpnc  ifjiBii  i  cDnipiitci  £ir 
a(ai<^u  iitDihrr  hurun  Th<  computrr  Ltr  titnpiMy  iiiinu  iiuliT  Eithrr  iht  tiuETLan  or  iHt  fompurei  (tn  dnubk  ot  irnrti'ir 
■difCoUl    BoildpCktili^riiraiibt^rttll^dDt  itiiJ  l^i  t«plif.  BaCKCAMMO^J  J  Opla^i  n  aj:co|da;Tit  with  |}k  officiil  rukt 

□  I  t>4(:k ■•»)»>(! n  4«td  ti  tu'c  ID  pE^Mdr  nanv  (iKntlmf  tnitortt  ol  buhfimiuDn  pli^ 

CHi^CKER-S  y.(f  tPtT  D4bl  rrht:  tU.H  L>HTtl4/'IH.MIXikctv 

Thn  II  anc  !!r  iFir  epoV  cJHaJksitini  v^nlcti  pioffimi  iiiiiUbk  li  hi  ID  lotta  at  pUr  and  alloti^  ihi:  iiwf  lo  fhuif''  >l'>ll 
Ifvrl)  11  ■nr  tim'T  A!tlvau|h  piooMint'i'kti)'  [{luth. lame ai  level  1 4,  CHECKERS  ]  Otip^fhjiKiJiji  iiiiMi.iiftkM  Iptlif  wid 
10 

CHESS  MASTER  (Nonb  Sur  Mid  Tm4«  ««lr>  rrM«;in.t5CMKtH--Sl).H  DbbtK 

Thn  ^onpLp:;  jrd  ven  w^nFul  piap'*'^  CQiidn  ntck'^tbO'f  ^^.  Iiinchida  uHlini.  en  piiuni  cipuimasidihepioiiia^ 
iNia  olpi^Qi  AJl^tanalt)',  the  board  nu)  b<p(Cicib<lwtihciEAnoIpU)>,p«frni[iiin|;ihinkffiiuiioa  □!  "baak"piar>  To 

flUiLtuR  ncEuEKia  ipwd.  HirpiDiim  ii  .nESrii  ib  ■ucrnh'f  bii^jair  Iby  50FT*A"t  SPfCJAI  ISTS  MCablomul  FuO 
liapt^i^'t  vc  crpplQcni  in  \fK  JKiK  rtrti^r.  fwi  i^c  vidshi  of  ■}phinunifrK  dnpUf  air  pro'idrd  id  KcommaJjiEe  Norih 
Stai  JHTL   S«  roie*'  ic  anCwnpuiLiii 

LEM  LANDER  (S2M,  Ap9b  pU  hI}) 

t^DiroLii  l-tM  LANDEfc  In  ■  «fr  landiniun  tnr  <i(  nuKd>ricrrB<  ii«>(Kmanbri  frem  w 
paddin  »rt  iiKd  i»  >cr«iitil  crift  iiiiiud*  and  ihrvu   1hli  is  a  r>t«i-iittic  hifh  m  cluJ)cn|.f' 

FOREST  FIRFI  4Atir1  oihr)  mm:  i».»f  t'MMiti/iiio.ts  Dunu 

Uiini  CKclltni  jr^tiki  and  icuiii  <IIecii.  ih»  iimuliEion  puuybG  in  lAc middle  si  ■  tortu  [jie.  Yfiuj'jab  ii  eo  diiKi  opam 
iJOEHio  pui  ocii  ibe  fiEi  shib  Edm^Mnuijiiji  'fof  ^ur)|H  in  iaind.w«attirr  and  iriT«m  Ndi  prDtccHni;  ttkiibkirrji^iktmcan 
>nuliiaiiHrtliiiB?FnalE>n.  Ult-iUt  "tr^bln  air prqiidcijiUimtke' FOREST FIRET>n)<  luipcnvcfjIudchaJkngmi.  No E%D 
lamei  have  [J]«'  tame  xcitig  irtd  i^trc  ire  !  kxli  of  diincuh). 


SPACE  EVACUATIONS  lAppk.  Auriai 
Can  TCM  s-E^toEiiie  ilir  tiki}  and  t'aojjJr  ih 


1^1  fkrn^ii  of  stauK-  ipart  finvei  ■ 


1  TRS«  batj)  rtM:  IIS.MCMMicte/tlf  .H  DtakfiH 

Fanti  beloir  ilvt  wa  tiplodn?  f-oui  tompuut  brfutmihr  ^tp'ipijnipijur  ai 

or  propk  Tfcii  umvlalwn.  n  pactK-ulaili  miCTniin)  it  n  iiVRbmn  mviy  cifthe 
i!w  m»trt  thiUeriif  ot  ADVEJiflUllfc 

MONARCH  (Atutoaltl  Pnn;  II  I. HCuirHi/IISKDtaknw 

kjiOSARCH  It  1  laKmiEiflf  nocKiraK  iimulauofl  requtfinj  foti  lOMinitiui  t-ttv  Ecnriai  >Ehtriiai>oii'il(*din'  Voki  deui 
nisf  Lhe  lUiuLuit  sr  tenatt  devoied  to  induiitiiJ  aitd  atrifuluiial  uu,  how  aiuctt  toad  to  diitribuE*  u>  Eh*  popuUcr  and  hp* 
niLuriifaouId  bci{iciiiE»i  poD^tiqii  lonupl  VovaMI  Ind  IT4  aVAcoKm  ■nidvea-corapfanKir 4>td  ihai  ii  unoEeuyECRuie 
cvrrycrc  happy.  Ruu  in  ilK  Aiari 

CHOMPELO  (Aorl  oiity>  Prtrt:  11 1.H  Cawmr'IIJ.K  Dkkntc 

CHOM?ELO  a  irtlly  e»o  ctialkn|in|  t^itn  ir  ochf  One  ii  lunilai  id  MM:  ycu  mjii  bite  otr  purl  of  i<c<hkK,  but  atoiij  uk- 
ini,  lhe  pouDivcd  pcntian.  TTi«oE]i(i  lame  ii  ihe  populij-  board  jarae  RFVERSI.  ^i  tuUf  utei  lhe  Aiaii\  giaj^ici  eapa)iiliEy, 
Ifid  M  hilA  m  bra)    Ttin  pa^ilr  hiII  )Ur  on  a  i«K  i^i^iein 


SPACE  LANE&4AvMfabk  forsll  caDpHltn) 

SPAt'E  l,A^E5  it  *iiiiipk  tn»<  eiiiiiii  ip«<rii4^)iP«Elajip<i  %jurn  • 
The  ob]«i  di  10  form  aitd  eipa^  ipiKe  irAnirporuuDrt  eampaiuci  m  i 
■ofih  EUaa  lOut  fipp6A««i.  Ru  t(i>iUitDUi  luJuU  i^iock  ("^eiui^L 


hin:tia,tJCi«Mnt/II4.tSINiihfni 
\<b  involxnup  EO  lour  playcn  Eindudini  ihe>cocajHtci| 
i;onif«!Jiiiimiu''aruM:'Pil  Tb*  joaJ  n  to  mmait  eaain  o^ 
■±m1  4.-qrapani  iDff)tE1<    W'ikk  T-^kM  >ca>lll|  (TOw' 


AVAILABILITY 


DVNAIOMP  wTivire  ii.  lupplwd  oiih  Lompkie  dwumcniiiHin  <:o4iiunin|  cleir  eiplanaiKint  and  eiiunpki  Unkii  oibet*iu 
■.[iCkidftl.jlJ  proifamiHiL  run  •'iiiiin  I6K  rroiiim.rriKndri'  ipactf  ATARI  icijuim  i*.K\  ttLcpi  lahrrr  nui<ii.piD|iamvi.rFBi«ii' 

ablrun  ATAKI.  J'tl.  TSS-MlLrvfl  ll|^d  Appk  [AppkvplH  cati^U  an^  difL(|bc  «|,  *rll  M  F^OTth  5l«r  iui(k  Jftiul)  Idffubk 
(IrTiiit)'  L-nmpiEibkl  djiknic  AddiEiDuUi ,  rvchi  pii>|i»]ni.  nn  be  abuncd  on  lUJidu-d  lIRM  )7M  iirt|le  Jentiiy/d^bk  itfiwir 
.i3inp«tibler(xrnauil"CP'M  nopp)  d»ki  lo!  ).yi.irmt  nirutini  ut^ikr  MBaSICUut  MampSf,  aIedi.  Xrfai  120 <ri!  many  aiherij 
5  '•'  tP-'M  diikWci  *re  (vpLihk  for  ih«  Sgtth  S!*r  and  Oibwne  t-9mnj<er  irvetn'k 


■4jr^Jfr  PET  CSif.  .\OMTU  STAR.  CP'V.  IBM.  OiBOJfSt  a 


t  rfjfuifvJ  irtdtinmt%  exa  at  iio^  mvrti. 


DYNACOMP  OFFERS  THE  FOLLOWING 

•  Widest  variety 

•  Guaranteed  quality 

•  Fastest  delivery 

■  Friendly  customer  service 

•  Free  catalog 

•  24  hour  order  phone 


AND  MORE. 


STARTR£EJ.l{Ai'«q»bkror«Ut«npMttn>  Prktilll.'HCHttlit'SLf.HHiktllt 

Th^i  t3i  ihr  claub:  Sunrek  iiTnuLm-orL.  bji.  viih  ie>cirxl  nc»  fcaturef,  Fw  «i.ajnp>H  i-'tf  Klinjaivf  now  tliMvi  at  lhe  Enurpnie 

<kLI|-£>wl  V'U'IlLnj  vhikalM)  ■ll*Cklli|  tiafhai«i  nlDtbrl  quadraati   Tlif  Kilinaqnii  a4.Ki  Blta^k  Htlb  bpth  lifht  andhcKvy  (ruiVTI 

iAdnttnr  wMMinot  at'  th(  uiuaiian  LLhftii^  irhen  the  EpirrEimc  ti  bnwisd  bf  ihrtt  heavy  cnriKii  Mid  «  watbaic  S  O  S  i> 
rntvrd?  TTk  Kluifoni  |ct  rrtnf  Str  ihi  Hrt^ire  rrrirwi  m  A  N  A  I..O  C.  HScfi««it01i4be  indOune  MerrluAdiimi 

■I^CL  HOL£(Ap^  eiaH})  rttrt:  IH.»Cawnt*'IM,M  DliktMt 

Thii  It  •TVtountfi'aphiCBliunuiMKWof  Ettcprcb)rniitE*othufisekrKl»  »Mr>rfi|  i  bUfk  hok  •'VihaipAfepiobt  Ihcob 
Kn  A  Eocoicr  and  mainEatn.  }cy  a  pirtcrtbolhfiK.  anwMclMe  eo  *  laiaH  bUtl  h^  Thu  »  lit  bt  a<hi*<ed  vdhAui  cCduni 
u  noj  tie  iwmalT  ihai  th«  tidal  .ir*Ti  druiori  tb  ekbOt  Cj^bita!  efthe  eiad  it  rraliMicaUi  tiniii«i«<]  siimi:  ide  kei  l*r 
iou:u(ia;^nLiui  Efcrudrn  lor  acptlnttofi    Thu  pfp^am  empbn  HiRn  inptuci  and  ■!  tdiKaiiDnal  it  •'CU  at  cbalkuprf. 


Prkf^tigviC-tPvUr^SH.HIMikmt 
■  hole  trirthe  lerecn.  SiHand  timipk?  .Nootticii  lhe 
ikill  aiaihil  aElten  ifi  ihn  riLbil-CdfrfiiiXK  itEiorl 


SJ>ACi:  TILT  (Appk  ud  AiMii  oab  I 

L«c  ihrxunr  pwWki  tq  ijj  !►*  pliw  o(  ihs  IV  wieeu  lo  '■rofl''  >  baUlD 
tiok  (cu  tma3ki  ukI  intillcr'  A  bjili'ir  iimrr  tlls»i  f-Mi  va  n>t*iuit  ^i 

ESCAftl^bOM  VOLANTlUMIAI&rlfiBllJ  frinitimc*-Hir/tM.t$UalriU 

Si>ii|  Eh«  acnon  anil  r.tiErnimi  oF  an  *t(iO<  intg  ywr  honif  *nh  ESCAHt  PROM  VOLAMTIUMl  To  eivape  >txi  muiE 
fflanru»ri  rnjiiT  »pacc  ihip  iruLiad  obiiacJri  ud  iivr  bUu  the  draioii  >i>ithoui  betnj  rairni  II  he  it  killed  >kiib  a  direti  itoi 
(ftcH^uu  i  ki  tapptdolO.  *  dswr  0[>mi,iiDihi:  Duiiidf  H^wrTCf.ihrdqprd^r^nqt  itiy  opm  indcfWiith  1^  iw  Mioncapc 
in  iiinc.  the  thwr«ip>n  tpd  a  p*"  drmfisappnri  SoriKiintci  j-ou  can  uiuih  itiniufh  EheiJDDrbyrepciEcdIjrchippuiiiikiylE 
II.  OEhrr  ymn  ie  ii  imperbnui  Ai  ih*  hither  k»tlearpl>)imofeQbiUi;kiartddta|orrtip{teM,  iddtfii  lu  tneeictceirienE  L'ui 
h^h  ftioluiion  trif^ifi  *iui  -wuBti   Kuai  m  ibt). 

ALPHA  FtGHTEHfAttrloatTl  1^f!tM.HC>Bfiir/fit.«9PWvtif 

Twc  FifFlkfli  ftzpluu  iiu;  adipa  ptofrvm  »  iporl  ALPHA  FKIHTER  eeqiurci  yra  lo  dauor  ibe  abni  iiinbipi  paiuof 
ihrpixfa  ygur  K«or  or  [he  (akXT  ALPHA  BASE  u  ID  Uir  p<ub  □{  an  lien  UFO  irthukci  ki  ri*«  UrO'i  (cr  hr  ud  the  fasM 
indi  lloU  iwnn  require  the  jOTHict  apd  Rt  protrntivciy  toore  difrjcnh  ibe  bifbei  jnni  kdtc'  ALPHA  FICITTER  «tU  run 
on  lUiiftrnu, 


PrkT:>]4.t9CMKiH."IM.HDIikjM 
icli  ttmrrou  Wax  ihrauihthenii^artd 

)^Li.  nnlini  |.ifvtv  lufii  on  fbl^  i^irrm^. 


THE  RINGS  OF  THE  EMPIRIC  lAurtsslyJ 

Thi  Tiopie  liai  i}rit^r<rO  ■  nt*  bitikiUliorvpTtHcned  b|-  rcjUEiai  nnpafenrriy 
deiiiO)'  lhe  iiaiicn.  the  cmpife  devtlop-i  a  tttt  luiioei  wieJi  mart  prdEttEjri  iintii 
emp  Ctrl  etunuse  iiapCiKi  j.nd  uiunJ  xnd  fan  bt  [^m^  hy  pnc  Ol  ^TTLj  pkyiTii 

INTRUDER  ALERT  (AUrtQBlrl  rri»:l»,«SCa.a.ii..U*.HPMrik 

Hiu  iia  fiu  pmd  triphki  lanit  uhichi^UiM  ftni  ui  iV  middle  ol  the  "Drratfitai"  havin|  )utl  :kii>kf9  iii  plioi.  The^dmidi 
ha>f  bftnakncda»dacf  djreciedEodeiiroir  tDniiiallcoiU  yo4iEnutEfiiidani!em<i>i>ui  ihipgciMfafc  «Lih  ibr  pLuu  Fiv? 
kveL.  ol  difriculty  are  provided   tM'RLDER  ALERT  ioiuiId  tja^HKt  ami  *ill  run  on  I6K  tyite^a 


MIDWAY  (AtHlDBlj) 
MIDWAY  A  ID  exaitflt  I 

^An.  lir  anall^r  hiamxc.  or 


r  EM  iaoM  Df  Fuiilnhip   II  D1IIC1 
Color  frapAici  and  wund  ai 


n  or  Urircf)  and  naiKe.  Tmr  cppcreni 
huKlwkd    Hidiiin  UK 


TRlPU.  BLOCKADE  lAtail  oiItI  Piin:  IM.HCMncf  ^tll.tS  DhkHU 

fKirnLE  SLOCXADE  It  a  i>o  lo  l^rtc  ptaftr  jinptiKi  and  uxind  icii«n  nurtt.  li  n  b«Hd  mi  the  cUiu;  mko  arcMk  tarw 
■  ttvi  auuont  hate  enjotiTd  Uunf.ihe  Aixrt  loyiiicki.  throbjcciii  !o  direct  yOur  binckadtfii  IiCie  aiDand  itici£i«n<aiihavi 
>llt>.   Ahhouiti  \ht  MMtcepI  It  tkeiplr.  U>f  combuard  jrcphifi  «Bd  v\*^  eUlTt  k«d  11  "1ti|h 


CAMEi  PAClti(Av>ltabkloe>UcoBp«Un)  rrkt^lli-VJCMKtM'tM.HDUtitt 

GAMES  PACK  I  Hint.ini  ihr  (lame  iprnxwDei  i*JT<t  of  BLACKJACK.  LUNAR  LANDER,  CttAPS,  HORSERACE, 
SWITCH  arid  rtiarc.  Tlicu  lamet  hate  \<tn  combijw]  mio  one  Ufgc  [Mtiei>n^  (''■  'air  in  laa^iiiEvc  IIiev  air  tnijividiitlly  ic- 
i:eu*J  by  i  coaveEti*nt  msrL   Thii  toikrtiftn  n  .deeji  ilic  prte  ju<t  for  irir  DYNACOMP  vrrwcr  of  BLACKJACK. 

GAMES  PACK  II  lAvalbbk  rorall  codiputnif  Prlnrdf.fSCMWlr/IM.M  DUkttia 

GAMES  PACK  tl  ■■uJuiIn  lhe  lamn  tHA/Y  EIGHTS.  lOTTO.  ACEY-ULCEY.  LIFE,  WUWPU5  aid  Qthen.  Ai  *tlh 
GA.\I'E£  PACK  I.  all  the  (amei  irt  kaded  ii  ofM  prE>tiatn  aAd  nr  ^lallrd  \\dra  a  irncnu.  Ycmi  mQ  p^'iKuUilr  m,|py 
DYSACOMP'i  .mion  nt  CRA^V  tlGHIi 


UhT  parIT4SMn 


r  p*f  ^IDiram  obtn  (uu  .an  b«>  *  DYNACOMP  COUkuOH  Foi  |U1I  JiO  BJI 


MOON  .*RQBE(ArHriud  NoftiiSlarMl;)  MnitllWC^arik  si}>s[>ttkriM 

Thtt  t  aDettrenMlj  chalkfiBBii  "luna/iiadfr"  jirotTun  Tbe-utnmutfdiopCrviiM&ii  lo  kisd  aia  prcdct'erTniricdujfciaa 
the  nina'i  BirlaiDe-  Yoj  HMirrol  [h<  itirvti  and  oncnunou  oT  icji  cnf:  ptui  direct  the  rate  of  drueni  lAdapfMoach  aoflc 
RuPiiin  KK  Aian. 

SPACE  TRAP  lAttrl  mI^.  IfrlL)  rike:SN.HC.wMie'SL(.«SDUMk 

Thii  .laianic  "iho«*ein  up"  arcade  iintE  placci  >o«  nemr  I  black  hok  Ydv  c»flii4>l)ter  ipMniilt  uu?i|  ihcjoniick  *ni:^'- 
temp  in  Wait  ai  mtn)  ol  the  ilMft  iihi[it  ai  ^mtiblc  brfmc  ihr  bia^ii  Tra)r  ^kqct  'lb■>^fl  !9U 


CHIRP  LN  VADERS  (PET/CBM  onlyl 
C'IIII:P  INVADERS  It  an  addiui-raaniru 
(ciu|idn  lAe  Earth.  Slitrnnaiy  obvlaclrt.  i 
journi)'   CfMhI  luck. 


hVf^fM.«9CMwnf/|l(.«niAHte 
ilKiinnirtphkt.  A  Fedetitiun  ipaee  uaiion  mutt  bt  icarhedbclort the  Chirpi 
.iMni,  meicwi.  ind  ihf  Jiudini  C'hiriii  mju.  ail  hf  ai«kded  iM  t  iiificnirul 


ADVENTURE 


CRANSTON  MANOR  ADVE-VTCRE  (Nonh  Mtf  ud  CP/M  <Mlr)  Prk«;  m.f5Dkk«H 

At  ta-r  AfuRipitheTiMvc  AdiPTture  larnefM  North  Stu  and  CP.M  tiitemi  CRA^S10S  MaNOH  AUMN-njH£  takrt 
jou  iMiC'  reyutnoui  CftAN5TDrif  MAhOH  wrvcre  iw  utempi  lo  (iiJitr  libukMi  EirtBiuin  L  jtkmi  «  tlie  mano!  ate  >iU 
anirrujn  Apd  >pboii  ■he.  mi\  not  |nr  Lp  lhe  Eieuurn  itiEhoLt  ■  fiitit  Tlwt  ounibet  ol  ic««>i  n  iintat  and  ti^e  aiiipoiird 
dfKtiPi^ontaremurhnwreelaboTiii  ihi.m  HHCLiicnt  pcfvUi  wriMof  Ad>c^tufc  progiafni.  makmi  Umune  thcipp  m  ili 
tiau.  PU|f  can  be  ttoppcd  ii  any  iirh*  jrJ  tn*  hxIli  iEoibI  on  dukrtir  Moi  acaJabk  in  1 '  ■ "  CPM  loimju. 

GUMBALL  RAIXV  ADVl>i"n;il£  (North  Stu  aBl>,  4IK>  Prkttlll.H  Dbknu 

Tikt  pan  *  thit  ouiliw  ric#  Irom  ibe  ciu  CQut  lo  ihc  onicoul.  Thr  joal  »  la  Hiid  youi  »aj  lu  itir  rinl*h  line  *hik  mtiji 
iairun{iiiFi^igiin>poiti^]<ipecd  You  may  chooK  one  of  Five  cart  avt^abEi  II  the  laragt  Ih<  th^icr  *iil  afrnn  ypu;  ■i}>et(l 
and  r.iJite.  Remember  \c  Lake  ipart  pini  utA  dpr'i  let  eiufht  ig>mlii)|1 

UNCLE  HARRY'S  WILLfNunh  SUranb.  MK)  Prkt:S34.M  mUrtk 

Uncle  H*ny  hudjcdand  hu  kfl  lou  eiennlima  Ho^rviT.  he  haj  ne|ktttd  to  meniion 'wiMie  r.enthi:a(ii'  Inilead.  hu  ^ilt 
cumjitiafapncinwhKtKtnilaiiixlvn  ^ou  «iL  ^a^c  lo  irB<e[  lUoiti  i!ie  Lpited  StaEei  boih  bi  lar  u\d  on  (opf  tp  tche  Ow 
puriSi,  aid  ihnc  ait  over  KD  kKaiKini  \a  piobc   Be  (velul  and  »ilth  due  tor  rrd  hnrii^fi- 


SPEECH  SYNTHESIS 


aYMACCi<hlP  ii  no*  diunbuimi  Ihi:  n»  a 
tewuKTt  TFT  w  your  cwnj^jEef 'i  seriil  inier 
protrini  ijKCchiynthHuer  on  liKmaikrE    I 


Tvijiuijon«>  TYPE'S-lALKi"  rri-rnipwh  umlieiiiei  ffcwi  V«rti.  Siapl) 
:.  cnuT  icxE  from  the  l(.e)'b«did  and  hear  ifw  ■(>rd)  ip<^i:n  TNT  it  ihc  ^im-iQ- 
M  ih^leaiE  aciauni  of  mrpiprv  irid?raridn  EtitmoTi  Ik'xibkii>:«bularyA'iaiubk 


retPS   DVNA<.i)MP-?ipriEeUW95   Pkaie  idd  JS  OC  for  *hl,ppiri|  ipj  fi.jidii^, 


TALK  TO  ME  IT'N'T  ACuH  onlr.  i*l() 
Thu  r'BVJ'ti  prnenii  a  lupcrji  luianal  a% 
illuttr.iEC  ElfoertM]  Hi^id  fg^ralmn  \\  vrll  j 


I    Flie  dccumrnlal 


'I  iflt'Iul  [nr>ti>"i'° 


MISCELLANEOUS 


CRVSTALSIAlMtfldlyl 

A  ijnu.iiir  ^ifnriihm  Tandonily  piitdum  I 
built  I'loKtopiiiefn)  irethtuMC,  and  IT 

lifd  III  hKal  iliilH  lo  detnunilpale  Ihr  V. 


Kiniiini  inphict  d^ivlayt  icfompariMd  ■ 
tronitiinr^rfFnlorthc  lourvdandfTiphKi 
irx!  irtJ  cvlor  leitLrei  ol  the  .i^ta.n.  Runt 


Prtrtil  l.'M<^aarilr/||J.»SDMTtiW 
iih  tonti.  •hi(h  la-'i  *i  lhe  paEtecni  ure 
■rrmrimrru'liii  CRY.^TAI.StiM  be«^ 


NORTH  ^TAH  SGFTAARE  EXCHANGE  t.NSSEl  LIBRARY 

HYS'tOMPnen  dulEibuiei  th>c  13  YOJumc  KSSF  lihiiry' TVw  dokriiTS  e*Ofn[ 
ita&dHif  Ttlue  [or  Ibe  purctiaw  price  Th<r  i>iOuU  be  part  gj  every  Nortl  Star  uwr 
for  de'iili  fc«aidiiii  Uw  (xntrnit  o(  *^  NSSE  cotkctKin 


TV 


S4  9)  cw;h'J7  «  «eh  I*  Of  morel 
empkte  cE>UccEi[)n  may  be  putfUaMd  for  ti'*  41 


BUSINESS  and  UTILITIES 


MAILMASTER  (Alut  dbkriie  Ml;) 
MAILMA5TEIIuj>en  itiuiiitiolv 


Wtia:  Ult.ti  Itakm 

puk«t<  r«  rrui^4bl  t^  nisj^lilni  dui!  Liii»  ui^  iiuiu  lUii  bu«.  Eb^  doi 

^  fDnUiniag  ii^Bic.  t4dm»,  thiR  !-lciin  Vtj  vordi  iitd  a  p-bonc  (dumber.  The  dapUy  a 
h  uiltdiud  taiAMM.  Titc  iuui  gt  j.,  ditk  ip*c«  t<l[,4$i)tiTiii,  tic  ji-i  ii\o*o  tiiU  idte*. 

■Ibd  iD  ionJftJ;  (iip  CAk  ind  tijitubebtl  i»  pirtfoniirf  »r  i  f»H  cnwftine  torWMvr  prturam. 


rrkf.atMDULmi 

J|  pqH  WqufnUil  iliU  Tiln 

umtnc  ei  on*  10  nint  chirKicT  mimp 
nd  11  krrf  >cniiilc  In  iti  ca^bibiKt  tor 


SORTtT  (Norlh  !]tulHLl;^ 

SORTIT  I]  A  i<Ti«r«J  purp«M  loninf  ptDfctn  snueei  in  tStd ttutihtiif  Uii|.uMj^  TTui  pmtiai 
itntititi  ftr  NORTH  sTAK  aA5ic   Piururj'  uc  ppii>^«i  wDfuUiv  Im*  (Hit  &*  numtnc  e 
50ltT(T  u  evrlr  um)  ■■ih  (ik*(en«ike6y^  D¥^ACOMP•l  MAJL  1 1ST  ptofi 
J.II  Dihfr  BASIC  du  Tir  Kmint 

PEKkONALF]NANCESVSTCK  lAUll  isd  NwU  Sliroobl  Frkr  U1.T3  Dliktar 

PFS  11  ■  iibiEt  diiktiiF.  Bimii-Qiicnln]  Hi^trin  cvmpoicO  of  i«n  ^JfctrM  pmiruBi  Bcinlci  rrcordini  yokii  cxpcnm  ind  lui 
dcduciibleittmi.  Pf'Saitl  ion  uidiuinaurUE  Eipcowiby  payct,  tnddkipU)'  lBr»iruiI«Di«n<iip<ndiiLrei  by  ipyor  26  ukt 
dcrincd  c»d«!i  b^morthiac  by  fuyee.  PFSiwili  tvtr.  proilutir  monihly  bvxr&pt^-oFrip^'tipcr'itt  by  titcigrrF  Thii  ponn-tu! 

pMt.l(t  tAjuiiEi  (tfiyti6t  disk  drii^e-.  miiuEiiI  lomary  ;J4K  At»ri.  J7K  Nuith  SUl)  IfX)  ■■ilL  llOtt  Up  10«0rtwrf|.  pwdijl 

{»rd9vtr  IQ03irrarilipndiitbyiulLLnjare~&inp'le[Jiu4«ioE3i<p<i>|iuni|  raucuiKoidcAtcUpluicMEiHiKniciiD 
thtl  you  nn  firdly  m  vheic  ycmc  mcney  («i  ltd  cbmuittt  lUHiwod'k.  ind  i«daut  hind  taicuUuoiai  CanuirLi  hLth  i^Mtd 
muMdi't  l>JSfLitt«  tdri 

FAMltV  BUDCETfAppIt  >Dd  AUrtanlr)  Mo:  M4.*)  bura. 

FAMILY  3UD0ET  li  *  vtrr  convntnl  ruvuKiil  lecaidAKptni  pfOfTun.  Y-ou  ^dl  be  ibk  w  knp  itark  ofcuh  ind  credii 
ttpcndiiurti  u  •>(£  i»  inconK  on  ■  dulf  buii    Yog  cui  iKord  i»i  diuJtKiiibk  itcimt  ind  clunubk  donuiou   FAMILY 

B^UDCET  iIm  IKOIndn  t  CMHiauOuiie^dorallitlcail  lluiLKCioni.  Vol.  can  mikrdulr(»|handi:riV|cnitrH:t  lau)  d!ll 

diirrfiTfii  ripnu  ■icaufitt  u  wcO  u  i{i  J  ptyiQl]  ♦»!  U»  KciMnit  Om  itt  mmIt  itirKTH]  j.i>ii]f  ih*  uKT  CMTiplTK  conlT^i 
ptfT  t^  pihcTw^K-  c9nip!K«i>n]  (u<d  imorfsnucd!]  lubjKi 

|?4TEUMl  (Auri<ilit>)  Prin:  Hf.M  DtaktOt 

Tbii  torin'irt'  pKkijr  nmiAau  ■  [oaiu-dRvciL  coUcrbm  of  pcDfli«nu  Is  Taaliuuni  rrficxni  t%o-*i!'  foremmikauoM 
ihrrajth  «  fuO  dupfci  modan  [required  Tv  uicl.  In  one  nude  cif  opcftiioii  fOa  au^  CMbiRi  lo  ■  daii  inrKr  Ir  j..  The 
SOL'KCE.  01  MeidNcii  ana  quKtir  IubJ  iiati  ii^is  u  ^wt  Qu^uWni  ^nii}  jffuf  d'Unic  («■  l»it»  viruoif  Thi  iitM^i  rt- 
dv^  "ii/tirv^  tiqif"  iFnJ  tliU)  ihc  KTv>»  cKvp  Yoti  niit  ibo  rrtord  ihc  CMSplrtt  conimii  of  ■  canuauoiciMini  vciatn. 
AdditKiniJtii.  prDfiuoL  ■'nitm  in  BASIC.  FORTRAN,  <ic  Duy  b<  butli  «IMin«uVb(  iTi«  iuHu^i  wii  idiica  iitul  bifr  "up^ 
la«ibd"  Id  ICMiMi  itiUpuIei,  Ai4,kifij  lAc  MAn  ■  nr.  unul  irnninaJ.  t^a  \tvi  9A5.|C  procrtm  ra«y  b«  tlh9il4f4 
f  wIVi.  «  conuBBnd  FikiTwy  be  buih.olT'^iM'Wid'uiri  Imci  u ccnuDUioi,  i^ptit  f«  ■  itmc-thuf  lyiion  T^i  u.  >Dtiun  Ki 
up  ;«ii  HquciKE  &I  tiBH-tktjy  mmmifld)  Jisd  pi^iau,  j.od  itM  Alwi  biU  iitbund  il»c:«i  »  taolMn  B*ti;h  ^fiictuiAl  AtL 
ihrt  *ddl  u^  Id  UVrt|  beUi  i.'6liiMi:i  liav  lAd  rOur  luni 

TEXTEDITORII  (CP/M>  Prt»i  IM.Kl  I>ikriirrtU.4iDkk 

Thii  ii  tht  untad  rrlou-  .««Ki  of  DV.saCOmPi  pppuUi  TtXT  EDITOR  I  iricMlMii  many  mem  Ja^um.  Whij  TEXT 
EDnORirjouDurbuiklEcuriksiaciiu^iudLuisnbk'LhcmforJiuidaplf.y.SkKkioridUmtibcippeDdedHmierudai 
deieted.  Fiki  nuT  beuved  od  diik/ditluiic  lO  riftij^uiiirMd'CMUrfd  (imiiui  id  k  Uiti  pmtfi}  br  pl^rTEXT  EDtTOK  11 
or  iA«CP>M  £D  fKiEtiy.  Fiiiiha.  ASCII  CP/M  fiki (iiKladini  BASIC  ind  ukkMt  Un^uitE  pccfrana)  mtytKiEtdbr  Vk 
editor  utd  cik«k4.  In  Ftci.  mi  niei  on  b«  buitt  UHPf  EDtnd  Uiif  r«auitd  uim|  TEXT  EDITOR,  II  All  di  kll.  TEXT 
EDITOR  II  ti  an  impcnuic,  ru}  id  uie.  bui  vny  fictjbic  cdning,  tfutm 

DFILE  f  Auft  uMt  N«nk  Sur  dUtiin  «fl]}>  Prkc:  sii.n 

Thit  hirtdr  pcoirira  lUoBri  "^ffi^h  Sur  ind  Ann  duk  umi  id  eniinum  a  iptvubicd  d»u  btu  i>r  ill  Tiln  ind  projirtmi  in  ilK 
MKk  at  ditki  ntiicb  miuitb^r  tccumuUid.  DFILE  11  tuj  m  mi  up  iaJ  uu  Ii  vill  M|knue  ymji  diiit  ic  pi^iblt  trficrii^i 

liKBllni  oi  ih^  dfiLrrd  Fk9r  of  pfo^ram 

F1^DIT  <,Sata  sur  oal;)  rrw«;1ll.'H 

Thii  ii  M.  linTT-iimla  piii%imnl  wtiiiii  miinuiTii  illlafin^lii^n  *l:i«1U^I(:  tij  kcr»("di  "I  'hin  typn    Pn|.aiuU  (ci^  Uil  niiHF). 

CcwimTtiil  itf,  plcunbtiSi)  md  RrrnnKf  {e(:  irvafuuM  trt«lti.  mord  ilbumi.  cie).  En  uld;i»a  tu  kcfirord  KitEhti.  ihcrt 
iir  bi/ihdiy,  inn^vcTMry  *r^  Appotniniciii  Kaichn  Tor  the  pcnau]  tKocis  tad  ■.ppoin.tneniuArchi'i  loi  the  :iHniiMfcLi]  re- 

mrdl.  llrtririKT  lezorAs  sir  itccssnl  bf  a  iiAflr  itywOSd  dt  by  j;ri:at-tr(rtrn(m|.  Ia»>  at  UtE^f  Icrwpri^i. 

SHOPPING  LIST  (Atari  anli't  Piki:IiI.KCAMa>/tU.«DkkMi* 

SHOPFir^O  LIST  ilo'ifi  mform^tior.  on  iian^yoi.  pMrctuK-f-t  Ih*  HipvnnAPkrl.  BctoiciDinf,  itwpipmf .  11  ■■JJ  rcniiH]  jouor 
ill  [Iif  [limf I  jnj  miihi  nttd.  ind  then  dupli^  In  opbnull)'  prinil  foui  ibspfMii  Uu  i^Bd  ihi  laul  ccn.  Addcii.  dckunf. 
('luiliril,  kAd  iioiiri  di,ik  II  itty  ttiy.  Ruai.  vi^h  16K 

TAX  OPTIMIUJl  (SofUi  SUroBlr)  PtWeUI.HDUmi 

The  Tax  Ol^lMlZf.1  A  an  Eai)  td-uu,  tiirftii  oiinilcd  HiflBUt  pa^kafr  Bhkh  [i(oi>dc>  a  ccwivrniml  mfani  Tipii  aaatr^iDi 

htJn«k>i  hn(9rrK  t^  ilTiiex>r(  The  prQi,nra  n  drf4iaci|  'q  pru>idc  «  Q>^ick  4nd  nty  d«M  cnir* .  Inc^nf  lit  u  f^nn^td  by  ill 
UL  mtthodt  |rc|uJu,  ukodc  itEfkimj.  muiinua  uid  iticriutc  (Qko.tmuci  bul  Th<  uwc  jtii;  JiuntdiiiAly  'a'bKr>t  Iht  lu 
«[Ia:i  r>r<nir»l  fmuKikl  dectiiam.  TAX  OPTIMIZIR  hu  M«n  ihb«ou(M;  fitid  inicd  la  CPa  itrton  tbd  tutoa  fiMepkir 
■i»h  ihf  cwtml  1*1  t*bkt  in  lU  d*U  Tit*.  Taj;  OPTIMIZER  n  »•»  d«luti*Uk' 


UTlL  tl  I  dbk-PPfnl^^  ulLlklT  n'^lOB  w&Kb  pTnnd^ 
ttu  bn  inriMk  ch-  aprj  kvd.  WrIl  UTIL  jou  an  a^ 
lof  poini«ii,  ffmUoaie  MciML  |t.|  t*d  wciMt  ruy  be 
apcnnKTd  protiiBwnrt 


4h!  tkinjii:^  or  iht  MnirniiiOl  DOS  J.Zuid  ].)  dbkeitn  il 
ih<  conunu  ai  ■  ddkeK  %ea«  by  tmor..  rcorwiurE  ib*  lec- 
"]<,  uidpdflaiviakDroilM't  i^ptiiwicitrdDiietainAi.  Fat  dt* 


TURNKEY  AWDMENV  (AuriMM 

TURNKEY  II  ■  ut^ir  pfv*^  >bKb  4lk<i>  ytx 
NKLY.IoAdibrprcfTL-ndiiikiticl'abcisDdjricid,! 
a»d  iREhjiln  anaUci  pi^trxm.  MENU    MEhU  In 


riVfltlf.VSDUfttl 
14  iinic  i.L>icb«ol'4kf:Dnn  du4<itn  tiiJ) .  Simplf  kiid  i^od  run  TLFS- 
d*ui*cr  »Kqu«VKHLi'TWIUHMClVdiUtii(*lHiconidi>iitiDOS2.D 
I  Ih;  i,-dnifn!4  qf  fpvr  dnttilf  tlphabflKiRr.  *nd  pcrmiii  Itt  rupninsaf 
h  ihr  iBility  to  nm  iii> 


STOCXAID  (Aliri  oa^)  rrtct^sn.H  Dtakctu 

STOCKAID  pmiidn  11  pMiR-fui  uL  fiC  l^aii  Ccf  ilttck  ftialkcl  aaklria    With  STOCKAIP  ypu  fan  dn^pU)  poir|  «rKl  Tifurr 

cbiili.DHrllw  b»!  (hwt**iiti5«epii«ioi|..  You  cwiaiwfiHninrioai  term  tro>iBi«T(rtfn«ndei>i-b>ikfK?vQ|0nffn[urn 
STOCK  AID  illavi  jrou  id  inpui  duly  diu  wAli  1  iin|k  duiciig  iiotifc  cipibiliiy  c(  iil  diyi  -  lb  vocki.  [included  trt 
»aek  diiHh'rid.  tnd  i^plii  tiijitmtta  cipibiliiiin  A  ^ei)'  ptoFttiikHul  ptiikkgEl 


EDUCATION 


KOPCe  PODGE. (ApplE  aa)T^4aiL  Appbofl  cr  lilet"  BASIC)  Prict!  llf.MC*MitwrtU.«  DUmi* 

L«i  HODGL  PODGE  bt  yoj;  chikl't  tetthfr  Pfoi>n|.  my  Hf>  on  ysai  Appk  inH  mult  lo  «  dirftr-rei  4Pi4  tfiiniMinx  "h*F 
rcninj"  FrU^cd  ID  ihr  k(l[«f  or  numbrr  at  ihr  rhciun  k^r  Thr  ptDfiiin'i  jiiiptua,  color  iiul  u)i>nd  tit  ■  dclijlll  (or  ^hildrm 
liLHTi  ifn  i  ■■■>  [O  ''.  HODCt  rODCE  1^  ■  iwrin^iridtKni.  icKhmi,  drvKf  m^K\  bringi  ■  nr*  duntninn  10  ilti  jk  t>I  niT' 
ruitrt  in  (i!u<4.ti'?n   S«  rivitih  in  lDtD'>«ld 

Ti^ACHtA'SAlDElAtarioBljll  rm:  l1J.KCHM««/>1T.«jDWHlt 

TEACHER'S  A[D£  cocitiu  al  three  buic  nnlLilc!  [Dattuwd  m oot  pcDfrtai  TbM  FuM  mcdiita  pirovida  iddnion  ind  lub- 
liKlHm  cinvim  n!  ia<rlJi|  IciriiAf  dirFmllj    TS?  IMiMd  atoduk  i:.onMUii  of  raultipbtaliaa  prabknii  m  ■{laA  Ibr  ilislnit 

mty  be  imed  boihiin  the  ri'«ii»ns»«»««!^™oe.iv  wbioOM  lajven  ini[i*ionii*ndi>«o«du(e  Se»wilir«tl»C'fcpinpk'»iST 
utipr^iHird  tmc  ti  *cll  The  ilurd  =iaduk  «>iijm:i  DfdikiuiiE  prabkxu:  oot  ps;i.k;u.lu1i  oxc  fecturt  cftlw  iJ]>tufK  nuKjck 
illhaL  IM  k)n|  tuhd  diraiati  iltptCdli  b<  di^>lared  llani  «eh  [n«  rrllUlAdM  laotOrt  ICrCleul;  doliMulralc  ihc  (n^OnduJc  by 

vhKh  the  TtmuEidn  11  den>n]  U'vnf  TEACHEIC^  AIDE  ii  -nw  RKitly  n  dnD,  bui  itthrr  ■  inm:«|  nnenem 


ORDERING  INFORMATION 


Sk4ff4i(  Hd  Mii>4l>^  Ch>rtt* 

WKhin  Nutili  Acncrict:  Add  SZ  00 

Ouimde  MdFEti  AfTitricn   Add  l}*^i  (An  Mill) 


AJI  iHdfri  (tKhidsni  booki)  m 


I"  LP'M  DWu 

Add  1:  SO  to  the  Itucd  d»kcttc  9rwc  Tor  cub  I"  rkupp)^  diik  IIBM  K>ri 

Micmafi  MBASiC  Di  UA^IC-K 


:ioifrf  t'P'M  fewmii)   Pcognmi  n 


■■  CP'-M  dbfci  o  sBo . 
II  ifil!  kKjU  wft»ai 


»jjt,Weo 


■■  dt>k>.  Norlh  5I»T  iQfin 


thCK  tnd  olhft  proti»wii  1 


DVNACOMP,  Inc.  (otpi.  E) 

1427  Monroe  Avenue 

Rochester,  New  York  14618 

24  hour  order  phone:  (716)442-8731  recording 

Office  phone  (9AM-3PM  EST):  (716)442  8960 

Nc*  Yqi^  StiK  rnHnn  fittM  »44^^  ^¥»  uln  lai 


STATISTICS  and  ENGINEERING 


DIGrrALnLTEll(A«aa>MtE«rBll«»p«l(nf  Prtn:  U).«!C*««>n'  M  Hiikfc<ch 

Di-CITAL  FILTIR  a  a  £Btnpr(hniii*c  diti  pitenud|  ttofftBi  vtkic^b  pemuu  the  UMT  to  dcufn  hkt  O'^a  t\hct  ritncLOB  or 
cboMC  lEOfft  ■  atau  of  tihn  lormi  Tftt  Fdm  ro<mi  tJTiijbKi)ueiit]]icwi<T3tftf  uLU-jisn-rKuniieiiaafOluiiOfl  tM(r««nii 
■rhich  pcfmii  rifid  d*u  pfOMUini  In  iht  «tpb:ii  itut^  mode  Eh«  ihapt  al  the  Izarjaicy  L-uurcr  (Lm^DC  it  ipeaf'Cd  br 
dimltl'fK'ninipQV^t  cl^^llbcdruEnt  fiitn  nacrt    In  L'trincnu  ^h)i1c.  idMl  Icb  pui^aiih  puitrd  &tfidp«ufih(riniy  be 

■  PfxDiuniiEd  10  'U7''^*'^f  vnHco(diniio<ht  ru>nbero!p9tni4UKd  tn  ifitMicuia'tKiB.rhc»fiiicnma.jiif*.Dft*Jlj'  iU«bc 
tinoothtd  wilh  I  Humnj  TuiKtion  In  addbiioo.  mtihi  iui<  ButKrvonh  filim  diy  be  lehcirf.  I^ciiurti  of  PICITAL 
FILTEK  jiK}ud«pk)iiij)ialin«diu  btloie  «nd  iftrr  rJlenrtLii^^fU  tidupiiy  nf  ihi  ihoim  Tilirr  luhciiom  AlMimludU 
icr  (onvrnxni  dl4  )tO'«e.  ieir«ial  and  rdiliri  procnhirr^ 

DATA  SMOOTHES  (Not  KTklibb  lor  AUrl)  Prki:  llt.«CMM4U/IU,H  DUUti 

Tfaiv  IPf^knl  dtU  iri'WEbiBi  pmiram  may  b*  uvd  Id  rapid-ty  dcriit  umIjL  in-focmilJMI  lEOm  noit)'  Biiuneu  ind  m^inwruil 
diEi  «hKh  lie  equiUy  tpierf  The  K>l!i««ie  T*iEor«i  ^finite  m  dnire  and  linjr  of  ru,  ii  .tU  ii  maaihed  Tliii  i«1  iccorvd 
drri'LUvc  ciilculiLioii.  Alu  included  a  luiDmiiic  p9ciim|  of  ilie-  inpul  diu  ind  impoihrd  rciulii 


reici:  SL9.KCa^HU/SU.H  DUktlU 
1  duiaiLOD  ugnak.  The  ptfttruTi  feiturei  luionuiL:  icalirf  uid 
■Ktufle  Ihr  aiu^iii  of  fonipli;»lcd  paiiemiln  uth  fitUt  u  *k*- 


FOURIEit  AKALVZERU*  AlUbk  Tm  •■  tanipmrn) 

Uk  ihii  ptotnun  lo  cxkmirx  Ehe  Iiniuericy  ipnti*  sT  Umi 
plotlinj  of  ibe  input -diu  ind  rcuhi  Pncii'Cil  ippliciiicn: 
iTDnuii,  canunuHiel'lidhi  Ual  tnJiihrn 

TFA  <Tnuf«t  FuKltoB  AnaHrmJ  Tjk*-  *W.»S*:ai«B„-JlJ.M  DWkMU 

T?i4>  1^14  ipvtkil  Ki(l*»*  [atkagf  vhith  Mi|r  bt  liwd  lotvdiiiic  the  ETU)i[c«  FLLTKtiOM  at  lyurmi  lucti  II  hi'FiwnpEirieri  wid 
rtlim  by  ciuninintlheii  inponie  tc  puIicd  inpuU,  Tl-Ali  i  raij&f  modiFitiuoftoEFOJmER  ANALYZER  indcontimi  is 
rri|iimrjilirfMni(ddt<ibeJ.veftuila|  ficoiitncr  pbi  ii  mII  udiucdJiintfciEurei  Whnwi  f  EJURIER  ANAl  V2iB  iid*- 
M«ned  fw  eduHtnonnl  «nJ  KWniifK  *■«,  f  Fa  n  in  cncnrvftni  imI  ArtiUble  for  ^fompjEcii 

HARMONIC  ANAtVZEfl  (Avaltahk  Im  bU  conpalml  rtKt:  SM.H CMtttW/tUH  P«*tl4 

HARlktOMCANALV2£R>>Mdn>|u<l(aiihr  K«uunifiilfut{irr<E«tiiii<ki^(fDnm  Fcuuin inutile  dati  Tile  pttcrft- 
liOE.,  eiauat  ijid  ttoiK(e''rcuir>il  ■■  vn]  u  dill  uid  ipmiura  pVotUDf,  <int  paiiiailBit;  umqur  finliif  li  ihu  ine  inpLt  diU 
need  BH  bd  tquiillr  ipiced  of  mordci  T}Mori(uuIdiu.ii  un£dsDdicut>k  ipliac  mierpoliijcin  n  ntcd  louEair  i>H'datifik 
iniwKI  by  tyie  FFT  aiiPnUun 

FpUKlEX  AT^ALV2£fc,  TfA  mni  HaHhOniC  aSaLYZER  bu)  b«  purchved  Eapthei  loi  i  cwtibii>rf  pnet  of  W  9J 
libm  cuaciieii  md  1!9  f!  [ihrnc  dtkcin) 

REGRESSION  1 1  A*d«Wt  far  a  f  oap-unt  Mfcer  J  W.M  CM^tM.IU.tl  DMem 

REGRESSION  I  ii  i  unique  md  ncev<''»^<i'  'erteEi*  ^sonJimfniipiiB.  Wan  Hjiu.-ei  pelinocmJ'  :ur\«  Fitttai  ptiJiria 
Fniutn  ib£!ud«  Fify  bhik  i^cuiwy,  in  luKHCAm  dtirtr  deurmuLition  {lEXioiaL  xo  ciirpvtke  uiwthI  hbtirr  of  finmj  tint - 
Uot».  SiiiedUinf  ^4UlomitKd4li.  (vr*e  andfnuludl  plMiiAj.*  )ulii>Ktliul)iu  |ci  lUndu-ddftuiJiCn.EoniLiiMMtofffv 
CHOJ.  fK.I  And  caiKb  EHMc  In  iddMion.  r>e«  fin  may  bt  tr>rd  >iLhpMi  ii^nimBj  ifar  d^ta  REGKESSION  I  ii  ceni4«li  Ehe 
CMridnuorie  ptogiim  ui  u)  dm  lAAtyiii  tolEnu'e  Hbttn 

REGRESSIOMnPARAITT)1A'Bl>btarorU»mfiBlrn}  rhn:SL«.HCM«ni>e'«D-»9aMfn« 

PARAf rT  il  d«MfDCJ  to  Mndk  ((hjk  twei  ip  ihkh  I'm  piaiarartErt  irt  iccb«Ll«d  (jxmibl)  luiilinurltk  tn  ihe  rutiui  [ii«- 
EJDD..  The  HUT  limply  isjcru  the  fuocttonil  form.  cnchidiEi  Lhc  pinmeien  (All).  AQ].  ?ti;,)uQDcaEiBorr9AS]:Ciu.ieflwcl 
Eion.  Dati.  rctdti  ud  miduih  mir  be  muiiEruliied  ind  pleiEed  u  ■nth  RECKEiSION  1.  Uit  REGRESSION  I  toe 
palynevDal  ntiLni,  and  PAJlAFtT  for  ibMe  cDOipLciied  (uiKuerru. 

MULTILINEAR  REGRESSION  (MLR)  lAfilkbh  fof  all  n>mp«un)  Pr«r*:  W.MC^imch/UI.H  l)iib*iw 

MLRkiipra(»uion«ti{i[Ewiiep*i:ku(ri:>i  jin«}|jDE|{liUKU4:OMimLn|{;i'>0OTtnoreLnritlyiriirpmdmlfir^iblei  Bn'in 
prffumimi  itir  baiiE  r<i«iiuDn  lakuLiiior.,  ihLi  piiifrtrt  iliia  pioiiijei  tiiy  ID  liie  diu  cniry.  iLDrife.  iriihevil  md  ritiiin| 
furtiiioni.  In  iddiiian,  iFit  uiei  miyinlr>OM<*  ■^c  iciiutior  bj  iu(riiL;ifi(.>iEu.ei  tat  Ehe  ndependent  liinibin  The  nucrber  n( 
ii'uublei  and  dm  lur  li  limlied  only  by  iFw  iciikblr  nveiTwry 

KEGRESSION  g.  It  ind  HUl.TILINEAR  REGRESSION  wiiy  be  rnjr<haH-d  itfirthcr  for  JiHi  [ihfrrcaudiw)  o(  J«  M 
lEhret  diikeiiH) 

ANOVA  4N«ts«iaa]>ta  oa  AUrinMKde  »r  tttt  PET/CBM)  prtw:  «•  Wt-a.n./t4J.MI>iak.na 

In  ihr  pail  Uk  ANDVa  {analyui  i!  vtJiMSict\  p[(K«duie  hAi  been  limiicd  !□  ihE  lirie  miinfruQc  Emipiiieti  No> 
DYNACOMF  hu  biwj|M  the  PO*er  p1  tlifi method  K  jt*U  ijUrm*  Fpj  iho« iMmeruini  *Jih  ANOVA,  lhc  RYNACOMP 
loftthut  pkcLiic  iDcludci  lhc  I  wiy.  J*  ly  ijid  N  way  grocedum.  Alio  provided  *'t  the  V«cci  i'^'"  fidonil  dei.ij,r.L  Fm 
i>Hne  uii(feniiJut  Biih  aNOVa,  da  iiwi  *aiiji  Tht  titoiajmnr'at  iocumtautiop.  nai  wiiiicn  in  i  lutciiul  faihnn  (by  ■  pto- 
lenoE  ui  the  i.ub;ectl  ind  ttnn  ii  «n  n^Utnl  mtuMiucl^n  ip  Efie  iMbin:!  Aftompanriii  ANOVa  h  k  iLppon  ^rotrim  Ih 
buildmi  lb(  d«Ei  b«ie   Incliidtd  m  le'vrjil  focifeiiKnE  feAiutn  includini,  diu  ed;tiii|..  deleitni  tnd  ippen^ini 

ftASIC  SClEhTinc  .SUBROUtlNES.  VuIkhi  I  and  1  iNol  ■■ili«*r  To*  Aurt} 

DY.SACOMP  II  ihe  nrlui»r  diitribuisi  [or  ihe  lofi^'ur  keyed  la  the  p:fpu\u  lent  BASIC SC/E-'i  Tlt/C  SlUtHOniMS. 
yohimn  /anJjh)  E  Rijikdn^rwi  [tec  adierikienittiii  iii  BYTE  mifa&nd  TheKi-jbccitfiuiIuve  Ehcd  AiiHinblcd KaHdin|. 
Eo  chiptci   Included  ■■iih  e»th  coUeciion  •\  i  Fwru  pcojriin  •ha;*  wiceii  aaC  doBoaitiAEH  v^ib.  lubiouiiae 

VplBM  t 

E!:oUrfliaa  fl:     Chaptrii  !  uul  ]  -  flat*  aod  (uBclian  plOlli&tH  'Hl*ap4ex  vudbleiwtd  tiOtaXBi. 

CoUettMa  n:    Chipwi  <  '  Eticnded  mitiu  iffd  I'^nor  opcribom, 

CoUeaioa  fl:    Chipteii  S  ud  b  -  lUndoia  number  icnenicin  (PcHuera.  GaLaiiu.  cu.t  tens  ipptrat^Mmnt 

F'iKr  pa  cOlktt^ih      JII.V)  Cuidtt/tll  «i  [MkMIt 

AQ  Ltute  ooUtnioB^  m  nutoek  for  iit.n  {ihm  niwIEn]  and  t49  «}  lihm  daikeftn) 

CoUettiM  fl  Chipei  I  ■  Lilaeer,  polynoeniil,  muHuliiKiuKiiu].  puinietnc  icMi  iqium 

C^AettKm  »5  Chwfei  J  -  Serwi  (ppioiutiatiDn  iicftoi^un  4(co(irtaLLt.tiian,  MKiiieia,  it^tv 

CoJiennn  1:  Chaptei  1  ■  Funcii«atl  ipp<()<:iinii'Caii  by  igeiii^^  «n4  nnw»pn 

CoOiHtati  H  Chipei  *     CORDIC  ipcitmniijoni  En  irkiavKiKtrjc.  hyperb^ili:.  exponential  ind  tofaruhimc 


Ih  ihttimt,  VIC, I 


CoUeetian  li:     ChapEei  S  -  Tible  i/iierpclaiian.  di! feres tiatton  and  inicijiuon  (Triton.  LiCFinte-.  tpbnn 

CollcElian  H:     Chap-Eci  ft  -  Mrttlodi  fnc  Finduit  ihr  ml  Ififill  Ol  luMIiOnt, 

CvOettton  1:    Chiptei  f  ■  Mnbodi  for  rinduif  she  C't^Frpki  ti»()  o!  fuactains. 
C'^Jecihon  t%\     Chapter  I  '  Opiuntutien  by  iieepciE  docenE 

Prarr  piti  noUnLAri      U*  M  >Cxwcl[t/}il  4i  I>uLctlE 

All  rijht  coJleci»ni  we  «viiiabk  lor  IW  «J  (e^fit  t*iw<ie»l  •nd  iifs  <ii  ifi^M  ankn-.ti) 

B«iuiei(ieLe»tiarea>itilpanof  thedonjm<ntition,£AS/C5C;£','»Tff/C5tflWOL;r/,VES,  ViMumn  I  an4  i  i' 
fioifi  UYNal'OMP 


Prict  Slli.KCMMl1e/ll4.H  DWtm 
a  polinomUl  hxvin|.retJicLKlricieni:i.  Theie  ii  no  tunn  of 
:,  the 'Cn.tii^  31  teieialJ)  iTri' jood  So  uiilUI  ijrsirir  li* 
ita  the  polriKHmil  aed  the  icuduiii  duptixd 


Ste  rt^ic->un  KIlOaAUUxndDr    Dobbi 

liOOTS{AimU]dih  furdl  conpKUnl 

In  I  rkiuraJ.  ROOTSimuluneoutly  deieniiLaei  iJ  the  uio«ioj 
ilrrdetirKof  ihepolnvoniAl.and  beciuM  ih<  pioi;edjie»  itetati> 
icquiicd  u  input,  and  ihc  cakulattd  i-aotM  are  lubniiuiid  back  i 

ACTIVE  aRCUIT  ANALVStS  (ACAPF44llt  Apph  vmh)  rhn:  n5.H  CMtfle/Uf  .ts  DMetn 

ACAPiiihea&AkiicucuiideiitMt'liniAM  Id  LOGIC  SIMULATOn  Wnb  aCaP  fju  my  xnal^ie  ihe  rcipcnM  nlanak 
le^ror  paiirrcomponenlcircuri  If  | ,  i  ItuiiiKoramplirieT,  t«nd  paw  Filte;,  rU  )  Ttw^icui^iniy  b*  pctsbrdxi  equal  ii»^in 

IiequoHr.  i"^  lbeiniflla|[CHnplei(l  r  .  rral and un«f nafyrt  s OtUfn  11  eac^  i:bm|)iM<m  juACIuir  tliAMiMil.  B>  [lleilin|  Ehf 
EnafiiiiMie  cf  iheM-^olUfn.  ihcfiequmey  rtiiponK  9f  i  Tiltei  or  unpinn  oiav  he evmpkirly  deirrained  *<th  ir^prft  ld  boiii 
ampitiid'  ud  xAuc  In  uUUtion,  AC'AP  pnnti  a  uiuiticai  ical^ia  -cf  Ifte  range  of  'kolufe  rnpoiuci  ^tMh  rewh  fioni 
Eoiefua^  •aiiiiioniin  iMcoiinptrfwAii  AiTAF*  u  t*!;  uieainud  tiu  &jnpl:p  deM'ibe'Ju!i:trcuii«  lermialil^eelcnvciii  and 
iiier  ptKnoesi,  aiHlnetaie  CireiiK  d*ttTipiioMin»T&en>edi™ioi;»»»ctteordiiirHcio^retaiinlaiaiiier(iBw  fnieiBcu 
IK>Q  OI  ediiinf   ACAP  ihouU  be  put  of  everr  eucuii  dessner'i  profram  bbtan 

LOCICSIMULATOR(AppkffBli:4aKRAM)  rrtm^UJ,HCMPfa*/»(.*9DWkfP« 

V^itta  LOGIC  SJMULATOX.  y-cu  my  eudy  teii  you  etmfltCMUd  di^ut  kifK  ^sp  wiEb  mpect  lo  fi'-a.  kt  of  in^uti  te 
drieiniuAr  llfn  wed  ibr  cJtua  >ill  olWtate.  TPie  riemai^ll  vhiCh  BiMj  bt  tifftullted  iSCJilde  muJ»pk  tflpul  AND,  OR,  NOl. 

E.\OR.  EX><OR  aod  SfiSD  fKi.  n  ^Q  ai  mr-iert.  J-K  and  D  Fbp  llopi,  and  ont-ifieti.  Ihc  lewwK  pf  the  iT^Um  •! 
aiulabk  etery'  clock  cych.  iiipult  nuy  bt  chxted.  m  ^ata  >a/f  in|  chxk  ^dc  kccJki.' dupiicemenu  ukI  dekp  auy  be  udo- 
d^Ked  to  probe  for  |i4eehn4iHjiacTfPHtiiNinL  Ai  theuKi'm^iga.  a  Eunut  dugmn  loi  uiy  jncMM  afnodeinuy  be  ptoi- 
leit  uuTit  HIRti^  iiipAjcn   Sax  yaw  brtHlboarduii  umil  ihe  cirtuH  ii  ctietked  by  LOC^C  SIMULATOR 

NUMBERUlUNCHERaRS<»6ltl^)  pr«r«:M*.>$OuPiii>'f1).t4t)|ak.ii. 

T^iiproftam  ii  the  ruhi  ^cmpleir  numciKaJ  analyui  lyiiea  iiii^ble  (rr  iJic  TR540.  M  itn  ^iiindk  jpi4  19}daii  tea,  each 
iri  haiLhs  a  »■  (i^twtEi  ruune  It  includei  conipkir  diu  ediiio],  ficiliEtM  and  conienienE  diu  inpui/suipjE  capabtlti>  The 
aulyteii avaiUbk xre  mukipk linear  irtintion 4.itd enrreUlpon deftrmcn^ti-on 'ipE  rnidii^.  i]«e»  trang^^orin^tiEiDi *nd  ntenHM 
ITipbKi  itneriUianH  incl^mi  ui»  namini..  and  marc  The  lupporiuij  documautinia  a  Eiuemc't)'  w<K  wiiiitn  ajid  well 
□  riaaurd,  tpA  include)  ippendicn  iahii;h  dncube  Iht  nurriertcxl  pnXxilutni  ui^  lA  t\t  pffitrim 


Pitci:  SM.K  CmMrtiM/iCIM  Dtakan 

tieiEc  fliuild.  eda,  merj;*},  fcfrui  and  ^itii 
rrair.  viuiwiEe,  ita(nUrJ'(k»i«lico} 
ji  ilio  be  employed  lo  crtlLe  a  dill 


ST  ATSORT  (TRS-n  00])) 

STaTSORI  (oni.iili  of  HtcTii  menu  ulctled  p^dkTiiIh  witich  all>f»  ihe  u»tl 

niei.  I>ni«hm{]  wii  thetnon  any  Held,  trvd  numericilly  aiMil)'ir{inajiinK'ni, 
Eitiulatcd  dm.  SIATM^nT  ii  •rdl  dncumenitil  and  taty  to  uk   The  uikmc 
Itt*  ■huh  (in.  be  lead  b,  EU  fClJta  ViKk  Ad*Xlu4d  SiaEilIidl  Patkl|« 

S~TATTE.ST  (TRS-W  onl}  I  PMce:  ILVK  Cbmih/SU-H  D(ik«ni 

Ttiitii  aiixiiiLi.-aJ  mfittnvt  itatik^r  Bhith  htlpi.  fuu  rnUi  viM  dcciiajr.ii  in  the  Fact  oi  iin:<rtj.Ln!i.  Ia  in  uteiuiivr  lanhkon 
you  tan  build  4nd  rdii  dau  Tikaind  ml  Ihr  dillricKti  in  in<«n)i,  icninmi  »nd  pigpoiuiini  STAl  I£ST  ••ii  aUo  ptrforni 
iiu.ana]iyt4iai  kellaiilcitkrMmicioirFt'iliKinandieiieiiKin  ThiinKCU'dircaediiiLliEka]  norklKiiKii  rounded  out  witk  icbi- 

iE)u«Jt',-OfiIin^iKy  iFiJ  114  Bli^Al(DfRi4.Ad  nmmiij  ilndiXn  umpk  leTUtlEOt.  The  doe3,llirriUEiOB  il  vHEItnBy  tiOiltt't*^- 

fester  '>lw  fiudei  jrou  ih^ciuf h  the  vanoui  teiii 


ABOUT  DYNACOMF 


OYNACOMP  1%  a  Ifidinc  diurLbuior  of  unall  lyiiten  ladviut  with  uln  apucint  the  moM  IcuirrcnEl)'  ii\ti;£tll 
of  JO  countries!  Dunnj  ihe  pui  Ihf  W  JCtft  •■«  has*  trcaiLy  enls.-|ed:  the  DYNACO.MP  prixlucl  line.  h\;l  fiii-e 
mamlaiDrcd  and  unproved  our  hifh  level  of  qtiaiily  and  cuJioni«  juppon  The  acSueirement  n  qualiity  a  ippueni 
Irom  otif  tnmy  ttpui  ctiUomRS  «nd  the  wjft^ifc  revicwi  in  sucfi  pubbctUoni  U  COMPUTHOSiCS.  M  Sofi- 
*ir?  Criiiqui!,  A.N. A  LOG..  Creaiive  Cornpuimj  and  KilcbAud.  Our  ctislatncr  luppofl  is  ti  cloke  U  )*«[ 
phone    It  li  aJvayS,  Iticndt)    Tht  SUrf  II  hi(hl>  irincd  tnd  4E«iyi  n-illing  to  iacara  produjli  tir  lit;  iilvice: 


42 


COMPUTEI 


Fabruorv,  1982- Issue  21 


UFFER  ***" 
9090  PRINTfPR 
9100  GOTO500 
10000  REM  INPUT  A  LINE  OF  TEXT 

L$  =  "" 

PRINT"$_{LEFT) "; 

GETA$:IFA$=""THEN1003  0 

IFA$=CHR$ (13)THENPRINT"  " 


10010 
10020 
10030 
10040 
N 
10045 
10050 
10055 


;RETUR 


IFA$="§"THENA$="       " : REM  TAB 
IFLEN {L$) = (M-5)THENGOSUB22000 
IFLEN(L$) >MTHENGOTO15000:REM  SP 
ECIFIES  MAX  LENGTH  OF  STRI 
NG 
10060  IFA$>=SP5ANDA$<=CHR$(95)THEN101 

00 
10065  IFA$>=CHR$ (161)ANDA$<=CHR$ (223) 

THEN10100 
1'0070  IFA$<>DL$THENGOTO10030 
10080  IFLEN(L$)  >0THENPRINTA$; :L$=LBF 

T$  (L$,LENCL$)-1) 
10090  GOTO10020 

10100  L$=L$+A5:PRINTA$; :GOTO10020 
15000  REM  LINE  INPUT  ERROR 
15010  PRINT:PRINT"{REV}ERROR{0FF}  LIN 

E  TRUNCATED" 
15020  RETURN 

16000  PRINT"RANGE(LOW,HIGH)->  "; 
16010  GOSUB10000:REM  INPUT  RANGE 
16020  L0=1:HI=LL-1:REM  DEFAULT  LIST  A 

LL 
16025  L=LEN(L$) 

DF=0:IFL=0THENDF=-1 :GOTO16150 

J=0:FORI=1TOL 

A$=MID$  CL$,I,1) 

IFA$>="0"ANDA$<="9"THEN1609  0 

IFA$="-"THENJ=I :GOTO16090 

J=99:I=99 

NEXTI 

IFJ=99THEN16000 

IFJ=0THENLO=VAL(L$) :HI=LO:RETUR 


16030 
16040 
16050 
16060 
15070 
16080 
16090 
16100 
16110 
N 
16120 
16130 
15140 
16150 
17000 
17010 
17020 
17030 
17040 
17050 
170  6  0 
17070 
17080 
17090 
17100 
17110 
17120 
20000 
20010 
20020 
20030 
20040 
20050 
20060 


IFJ>1THENL0=VAL(LEFT$ (L$,J-1) ) 

I FJ<LTHENHI=VAL (RIGHTS  (L$,L-J)  ) 

IFLO>HITHENl600e 

RETURN 

PRINT"-LINE#->"; 

GOSUB10000:REM    INPUT    LIME# 

L=LEN(L?) 

IFL=0THEN17000 

J  =  0 

F0RI=1T0L 

A$=MID$ (L$,I,1) 

IFA5>="0"ANDA$<="9"THEN17  09  0 

J=99:I=L 

NEXTI 

IFJ=99THEN17000 

LO=VAL(L$) 

RETURN 

IFEE=0THENEE=15:OPENEE,S ,EE 

INPUTS E E,E1,E2S,E 3, E4 

IFE1=0THENRETURN 

PRINTEl ; " , " ; E2$ ; " , " ; E ; " , " ; E4 

PRINT"***  DISK  ERROR  ***" 

CL0SE2 

RETURN 


21000  REM  SET  MARGINS 

21010  PRINT:PRINT"{REV}SET  MARGIN{OFF 

OFF}" 
21020  PRINTTAB{7) "MARGIN  SIZE:{D0WN}N 

)ONE 
21025  PRINTTAB(19) "S)MALL   (1/2INCH)  " 

M)ED 

lUM  {1,0INCH) 
21027  PRINTTAB(19)  "L)  LARGE  (1  .  5INCH) 
21030  PRINTTABC19)  "0)WN  DESIGN" 
21035  GETMSS:IFMS$=""THEN21035 
210  50  IFMS$="N"THENM=79:SP=0:GOTO50  0 
21060  IFMS$="S"THENM=74:SP=5:GOTO500 
2107  0  IFMSS="M"THENM=69:SP=10:GQTO50  0 
2107  5  IFMS$="L"THENM=64:SP=15:GOTO500 

21080  IFMSS="0"THENPRINT:PRINT 
21085  INPUT"   INCHES  FOR  LEFT  MARGIN  ~ 

(10  CHARAC 

TERS/INCH)  =  ";SP 
21090    INPUT"        INCHES    FOR    RIGHT    MARGIN 

(10    CHARAC 

TEHS/INCH)=";RM 
21100    3P=INT(LM*100)/10:M=INT(79-RM*1 

0) :GOTO500 
22000  REM  BELL 
22020    FORII=1TO    5 : P0KE59467 , 16 : P0KE59 

46'5,85:POKE59464,115:NEXTI 

I 
2  2030    P0KE59467 , 0 :POKE59466 , 255 : P0KE5 

9464,254 
22040    RETURN 


CompuVDic,  Inc. 

P,0   Box  997  ■  TROY,  Ml  48099 
(313)  540-2838 

VOTRAX  TYPE   N'  TALK  (TNT)  Speech  Synthesizer     S359.35 

Fof  APPLE.  ATARI,  PET.  VIC  20 

—  LEAriN  ON  YOUR  OWN— SPELLING  (requires  VolraK  TNT|      $13.95 

For  VIC20.  APPLE 

OrSK  UTILITY  PAC  (Disc  Monilor/Recoveryl $29.35 

For  PET  (I6/32K  30/4  0  ROM  wilh  2040  or  4040  disk 
crrvo) 

BSD  3.0/4.0+  (Basic  Simulated  Disk-PLUS)   S29.35 

For  32K  PET  (2001.  4032) 
Fill  32K  wrth  hasic  iiroyranis 

Burlt  in  direclorv  wrii  allow  Jinnrediate  exectitron  ot  entire  direclory 
Entire  library  i:an  be  saved  lo  tape  or  disk 

SALE  prices  on  selected  PRINTERS.  ROOKS,  CHIPS.  PET 
COMPUTERS  &  PERIPHERALS 

Send  or  call  tor  Soltware/Hardware  Catalog  aod  ordering  mlorrnalion 


?coBr 


Diskettes 


Rely  on  Scotcti*  diskettes  to  keep  your  valu- 
able data  safe.  Dependable  Scotch  diskettes 
a  re  tested  and  g  uaranteed  error-  tree.  The  low 
abrasivity  saves  your  read/write  heads. 
They're  compatible  wilh  most  d  iskette  drives. 


(800)235-4137 


Tgr 

aavjtcxi 

ILTO  F^-T*"!*  a%d 

I>aief  Inquiries 
Invited 

iHOf>iSW  WH  w 

single  Board  Computers           Bare  Board 

Kit 

Assm. 

80-153  Ik  RAM  2k  EPROM              $19.95 

$  89.95 

S110.95 

80-280  Ik  RAM  2k  EPROM              $19.95 

$119.95 

$129.95 

B1-260  2kRAM4kEPROM               $39.95 

$149.95 

S199.95 

81-030  4k  RAM  16k  EPROM            $89.95 

"$249.95 

$349.95 

8085  3  chip  system                         $24.95 

8088  Schipsystem                        *29,95 

Apple  11  boards                         Bare  Board 

Kit 

Assm, 

79-295  Parallel  I/O                          $19,95 

$59.95 

$  69,95 

81-132  A-D  16  Channel                    $29.95 

$69.95 

$  89.95 

80-085  12k  EPROM  (2716)               $39.95 

$49,95 

$  59.95 

80-244  EPROM  PROGRAMMER     $24.95 

$39.95 

S  49.95 

80-1 44  Display  add  h-  data            $25.95 

$42.95 

$  49.95 

80-297  Parallel  Printer  interface 

S69.95 

$  79,95 

Extender  Board 

S12.95 

81-088  Speech  Synthesizer  (Votrax  SC-01( 

$139,90 

Other  Products                          Bars  Board 

Kit 

Assm. 

CRTControlier                                $39.95 

7.9-287  A-D  and  D- A                       $19.95 

$59.95 

$  79.95 

79-282  SS  Switch  ich.                   $  6.95 

$10.95 

S   13.95 

79-282SSSwitch4ch.                   $24.95 

$39.95 

S  49.95 

80-160 -H  5  Volt  500  Ma.                  $8.95 

$16.95 

S   20.95 

80-161  ±12Voil120Ma.                $  8.95 

$18.95 

$  22.95 

81-120  Parallel  Input  Speach  Synthesizer 

$149.90 

Send  for  complete  Catalog  and  OEM  pricing. 

"Partially  Populated  price. 

^  .John  Bki.i,  Enoink 

KiilXt. 

,  iNi;. 

ALL  PFIODUCTS  ARE  AVAILABLE  FROM  JOHN  BELL  ENGINEERING 

|-— -|                 P.O.  BOX  338  •REDWOOD  CITY,  C 
' '                         ADD  SALES  TAX  IN  CALIFOR 

;A  S'(064 

L^ 

NIA 

ADO  5%  SHIPPING  S,  HANDLING  •  3%  FOR  ORDERS  OVER  $100               | 

10%  OUTSIDE  U.SA. 

SEND  FOR  CATALOG        (415)  367-1137 

Mathematics,  Basic  Shills 

Paper  Exercises  in  Arithmetic 

For  use  iiitb 

■PHT/CHM  Compuler  &  Primer 

plus 

Compatible  Disk  System 

The  Teacher's  Aide 

Computer  programs  designed/or  use  by  the  classroom  teacher  as 
a  prirmnry  source  of  exercises  in  malhenuitics,  basic  skiils. 
nruugh  simple  question  and  answer,  and  iiitb  the  use  of  only 
:>m- computer  system,  a  teacher  may  satisfy  all  indiiidmilized.  in- 
class  and  hometinyrk  requirements  for  drill  in  arithmetic. 
Students  ufirii  directly  up<m  exercise  slxels.  Difflciilty  lefel  is 
easily  adjustable.  .Answers  are  always  proiided.  23  programs 
included,  cofering  integers,  decimals,  fractions,  percent  and 
much  more. 

On  Disk  $99.99 

Atgehra 

Explicitly  Produced  Exercises  in  Atgehra 

Sixteett  programs  in  linear  and  fractional  equathms,  simulta- 
neous equations,  quadratics,  signed  and  complex  number 
arithmetic. 

On  Dish.  $99-99 

(.Mziimi  residmis  please  ailil  -(*  sules  la.v.) 
Pletisc  add  SI. ;«  fur  piistage  mid  Imndiing. 

T'Aide  Software  Company 

P.O.  Box  6S 
El  Mirage,  Arizona  8S335 

■Ft  Tji  u  ;n*frmur*  iif  riijnmf^*r  Buutttt*  Mixbtiwx,  tni 


iifioyirHiyii 


A  LONE  SPACE  PIRATE  ATTACKS  THE  GALACTIC  EMPIRE 


You  are 

the  sole  surviving  '^ 
Naval  Commander 
of  the  Free  Space  Con- 
iederolion.  The  Galac- 
lic  Empire  has  overrun 
the  entire  solar  system  .  - 
except  for  your  remote  out- 
post on  a  moon  at  the  outer 
limits  Exploiting  the  un- 
matched ship  SHADOW  HAWK  I. "' 
you  prey  on  the  Empire's  mer- 
chant fleet  to  capture  enemy  mate- 
rial, which  can  be  bartered  for  better 
weaponry,  shielding,  missiles,  etc.,  (or  SHADOW  HAWK  I.  ''■' 
But  the  Empire's  interceptors,  corvettes,  lancers,  destroyers, 
and  cruisers  are  probing  Ihe  galaxy  (or  you  You  must  evade 
them  and  Ihe  deadly  battle  stations  throughout. 
Your  skill  is  measured  by  nine  rankings,  up  to  STAR  LORD. 
Warning:  You  must  be  very,  very  good  to  reach  STAB  LORD 
rank!  Very  good  indeed! 


^    ( 


SHADOW 

_  HAWK  I  ™  uses 

THEEE-AJOS  rota- 
tion, high  resolution  3-D 
graphics!  On  Apple .II'. 
■.  DOS  3.3,  or  Atari  600",  48K 

^        with  disk  drive-  Joysticks  re- 
^  quired.  Specify  Apple  or 

Atari  on  your  order.  Games 
are  on  Dyson™    diskettes 
Game  time:  15-30  min  $49.95  ppd, 
VISA  &  MasteiCard  accepted. 

DEALER  INQUIRIES  ARE  WELCOME 


7561  Crater  Lake  Hwy. 
White  City,  OR  97503 
(503)  826-4640 

"Apple  n  and  AIOBl  800  are  registered 
trcdemdrls,  respectively,  o(  Apple  Com- 
puler,  [nc  and  A!an,  Inc 


44 


COMPUTE) 


February.  1932.  Issue  21 


Transposition 


Janet  Whitehead 
Saint  John,  N.B.,  Canada 


Program  1: 

Line  40:  T I  finds  successive  values  of  (2  '''' ' )", 
(2 '/'■-■)',  (9 ''''■O'-' etc. 

Line  50:  Successive  one-halftones,  N  values,  are 
calculated. 

Line  60:  The  results  are  printed. 

Notice  that,  for  notes  one  octave  apai  t,  the 
ratio  of  tiie  (wo  A'  values  is  2: 1 . 


Editor's  Note:  This  transposition  algorithm  works  on  both 
Atari  and  PET/CBM.  We  hope  to  see  some  exciting 
harmony  or  other  musical  applications  as  suggested  by 
Janet  at  the  end  of  her  article.  —  RTM 


On  first  observation,  the  sound  command  SOUND 
V,N,T,L  seemed  to  have  a  lack  of  pattern  for  the 
sequence  of  numbers  representing  the  note  A^.  I 
recalled  a  question  in  a  high  school  mathematics 
book  that  stated  that  the  frequency  of  A  above 
middle  C  was  440  cycles  per  second.  To  obtain  the 
next  higher  note  on  a  musical  scale  multiply  by 
2  ''^'" ,  for  a  lower  note  divide  by  2  '^'- ;  thus  one  can 
find  the  frequency  of  each  of  the  twelve  notes  in  an 
octave.  (I  am  considering  each  octave  as  containing 
twelve  notes,  the  five  black  notes  as  well  as  the 
seven  white  ones  on  a  piano). 

This,  I  thought,  must  be  the  basis  for  the 
sequence  of  numbers  used  for  notes  in  Atari 
BASIC.  As  the  value  of  JV  is  from  0  to  255  (one 
byte),  the  frequency  was  not  used,  but  some  multiple 
of  it.  As  frequency  increases  the  pitch  increases, 
but  the  value  of  TV  decreases  as  the  pitch  increases. 
Therefore,  to  increase  the  pitch  you  divide  A^  by 
2  ''''■•'  instead  of  multiplying  by '2  ''''' . 

This  property  can  be  used  to  transpose  music. 
To  raise  a  composition  by  one-halftone,  one  only 
needs  to  divide  the  N  value  by  2  '^'- ,  for  a  full 
tone  divide  by  (2  ''''■'  )'\  for  a  tone  and  one-half  by 
(2  '^''  f  etc. 

To  illustrate  these  properties,  here  are  two 
simple  programs.  Program  1  prints  the  sequence 
of  number  used  for  N  in  the  sound  command.  To 
obtain  the  sequence  in  Atari  BASIC  by  Albrecht  et 
al.  an  original  N  value  of  259  was  used  instead  of 
255.  If  you  find  that  these  give  values  for  A'  which 
produce  sharp  or  fiat  tones,  just  change  the  259. 


Program  2: 

This  plays  a  few  bais  of  music  lo  illustrate  how  a 
piece  of  music  can  be  transposed  through  one 
octave. 

Line  100  -  Sets  the  voice  to  0,  the  tone  as  10,  and 

the  loudness  at  10. 

Line  1  10-120-  M  is  the  value  of  2  "'■'and  Tl  is  the 
number  of  half-tones  to  transpose  the  music. 

Line  140  -  Ml  calculates  the  value  of  (2  ''^'- )"  which 
is  the  factor  by  which  each  A'  value  must  be  divided 
to  rai.se  a  piece  by  Tl  half  tones. 

Line  150-^4  holds  the  original  value  of  A',  and  B 
indicates  the  length  of  time  it  is  to  be  played.  A  is 
then  transposed  the  desired  number  of  half  tones. 
The  note  is  then  played. 

Line  170  ~  As  the  program  plays  the  few  bars  of 
music  through  each  successive  halftone  for  one 
octave,  this  line  increases  the  amount  N  is  to  be 
transposed  one  half  a  tone.  As  the  data  must  be 
read  each  time,  it  needs  to  be  RKSTOREd. 

Caution:  If  you  exceed  an  jV  value  of  255  in 
your  transposition,  you  will  get  a  very  high  pitched 
note.  Only  one  byte  is  used  for  N,  so  257  would  be  1 . 

Perhaps  some  reader  can  expand  on  this  to 
play  chords  or  generate  harmony.  Knowing  very 
little  about  music,  I  will  have  to  leave  that  task  to 
someone  else. 


Program  I. 

10  H=;M1/12;- 

20  T=i3 

30  FOR  1=1  TO 

40 

40  T1=11-T 

50  H=259/T1 

60  PRINT  I.lHl 

■(H+0.5> 

70  T=T+1 

80  HEXT  I 

90  END 

VAK-7    S"     FLOPPY    DISK    SYSTEM 
FOR    AIM-65,    SYM-1 

The  VAK-7  Disk  System  was  specif  ically  designed 
for  use  with  AllVl-65  and  SYM-1  Microcomputer 
Systems.  The  VAK-7  is  a  complete  full  size  {8") 
Floppy  Disk  System.  This  system  will  Read, 
Write  and  Format  IBM  Single  and  Dual  Density 
diskettes.  The  VAK-7  is  available  with  both 
Single  and  Dual  Sided  Disk  Drives.  Each  Disk 
Drive  comes  with  its  own  cabinet  and  Power 
Supply.  The  VAK-7  can  handle  up  to  4  disk 
drives,  totaling  more  than  4.98  Megabytes  of 
storage. 

The  VAK-7  Disk  System  incorporates  both  ad- 
vanced hardware  and  Innovative  software  de- 
signs. The  addition  of  the  VAK-7  produces  a  very 
powerful  and  useful  computer  system.  Unlike 
most  other  disk  systems,  there  is  no  require- 
ment for  the  user  to  provide  RAM  to  hold  the 
Disk  Operating  System  software.  No  valuable 
time  is  wasted  loading  in  the  DOS  from  cassette 
tape,  because  the  VAK-7  DOS  software  Is  In  onboard  ROM.  The  VAK-7  is  located  above  the  32K  boundary  (8000 
HEX),  leaving  the  user  with  a  full  32K  bytes  of  contiguous  address  space  for  his  own  use. 

AIM-65— Allows  the  user  to  save  and  load  object  code  thru  the  AIM  Monitor;  to  load,  save,  and  append  Text  thru  the 
AIM  Editor;  to  load,  save,  and  append  Basic  Programs  thru  the  BASIC  INTERPRETER;  to  assemble  directly  from 
disk  single  or  multiple  file  programs. 

SYM-1— Allows  the  user  to  save  and  load  Files  for  use  with  the  SYM  Monitor,  SYM  Basic,  and  RAE-1. 


ADDITIONAL  COMMANDS: 


ACTIVATE  A  DELETED  FILE 
COMPRESS  A  DISK 
RENAME  A  DISK   FILE 
COPY  A   DISK 


FORMAT  A  DISK 
DELETE  A  DISK  FILE 
INITIALIZE  A  DISK 
LIST  CATALOG 


SPECIFICATIONS: 

•  Completely  assembled,  tested,  and  burned  in. 

•  Occupies  address  8000-8FFF  for  AIM-65,  S9000-9FFF  for 
SYM-1,  or  $EOOO-EFFF  for  KIM-1. 

•  IBM  Format;  Single  Density  {128  bytes/sector);  Dual  Den- 
sity (256,512,  or  1024  bytes/sector}. 

•  All  ICs  are  In  sockets. 

•  Fully  buffered  address  and  data  bus, 

•  Standard  KIM-4*  BUS  (both  electrical  pin-out  and  card 
size). 

•  Designed  for  use  with  a  regulated  power  supply,  but  has 
provisions  for  adding  regulators  for  use  with  an 
unregulated  power  supply. 

•  Dimensions:  Board— 10"  wide  x  7"  high  (including  card- 
edge).  Cabinet— 9.25"  wide  x  10"  high  x  16"  deep. 

•  Power  Requirements:  -f  5v  DC  @  2  Amps. 

117  AC60HZ  ®  2  Amps. 

•  Shipping  Weight:  25  lbs. 

'KIM-4  is  a  product  of  MOS  Technology/C.B.M. 


1 


PRICING: 

VAK-7  $1,299.00 

Controller  and  One  Single-Sided  Drive 

VAK-7A  $599.00 

Additional  Single-Sided  Drive  with  Cabinet 
and  Power  Supply 

VAK-7B  $1,599.00 

Controller  and  One  Dual-Sided  Drive 

VAK-7C  $899.00 

Additional  Dual-Sided  Drive  with  Cabinet 
and  Power  Supply 

CALL  OR   WRITE  FOR 
FREIGHT  CHARGES 


RNB>  ENTERPRISES 


INCORPORATED 


4030  N.  27th  Avenue,  Suite  D 
Phoenix,  AZ  85017 
(602)  265-7564 


Program  2:  Atari  Version 

100    U=0   1=10   1=10 

110  M=2'<1/12) 

120  T1=0 

130  ■■'   ■■'   "HAPPY  EIRTHDhV" 

140  f1l=l1'Tl 

150  FOR  X=l  TO  2b^REHD  H.B^A=IHT(A/ril+0 

5:-30UHD  U.A.T.L 

lee  FOR  1=1  TO  B^t-€XT  I:S;OUHD  U.-y.eAi^C 

'/(\  y. 
i?0"ti=ti+i 

180  IF  TK12  THEN  RE'lTDRE  130  GOTO  140 
185  END 

190  DATA  122. e4. 122-64, 109. 128. 122.128.9 

2.128/37.256 

200  DATA  122..b4. 122.64.109,128..  122.128.8 

2.128.92.25b 

210  DATA  122.64.122.64.61.123.73.128 

220  DATA  92.64.92.64,97..  128.109..  128 

230  CiATh  69 .  64 .  69  €4.  72  ■  1 28 .92-1 23 .  82 . 1 2 

8.92.256 


Program  3:  CBM  Version 

100  POKE594  67,16:POKE59466,15:POKE5 

9464,0:5=59464 
110  M=2''  (1/12) 
120  T1=0 

130  PRINT"HAPPY  BIRTHDAY 
140  M1=M"T1 
150  F0RX=1T026:READA,B:A=IMT(A/M1+. 

5) :POKES,A 
160  FORI=1TOB+B/2:NEXTI:POKES,0:NEX 

TX 
165  REM  VALUE  OF  B  IS  INCREASED  HER 

E  TO  EQUALIZE  THE  DIFFEREN 

CES  IN  SPEED 
168  REM  BETWEEN  THE  CBM/PET  AND  THE 

ATARI 
170  T1=T1+1 

180  IFT1<12THENRESTORE:GOTO140 
185  POKE59467,0: END 
19  0  DATAl 2 2, 6 4, 12 2, 6 4, 10 9, 128, 12 2,1 

28,92,128,97,256 
2  00  DATAl 22, 6 4, 12 2, 6 4, 109, 12 8,  12 2,1 

28,82,128,92,256 
210  DATAl 22, 6 4, 122, 6 4, 6 1,1 28, 7 3, 128 

2  20  DATA9  2,64 ,92,64,97,128,109,128 
2  30  DATA69,6  4,69,6  4,7  3,128,9  2,128,B 
2,128,92,256  '    © 


ATARI®  ,  PET®    or 
APPLE®    OWNERS 

BUSINESS  OPPORTUNITY 

DEALER  REPRESENTATIVES  WANTED 

PART  OR  FULL  TIME 

NO  ROYALTIES,  NO  FRANCHISE  FEE 

SERVICE  COIN-OPERATED  MICRO  COMPUTERS 
IN  PUBLIC  LIBRARIES 

Exceptionally  lucrative  ground-floor  op- 
portunity to  participate  in  the  explosive 
MicroConnputer  Market.  The  Computer 
Bus  offers  Community  minded  micro 
computer  owners  the  chance  to  develop 
their  own  successful  business  within  a 
relatively  short  period  of  time  with  this  in- 
novative Microcomputer  concept.  The 
prognosis  for  success  has  never  been 
better. 

If  you  are  accepted  as  a  Computer  Bus 
"Learning  Center"  Dealer  you  will  operate 
your  own  sales  and  rental  business  from 
your  home  or  office,  featuring  a  product 
line  of  uncompromising  quality  and  out- 
standing company  support. 

Investment  required  $3,000,  secured  by 
extensive  computer  software  and  hard- 
ware. Protected  territory,  leads,  national 
and  regional  advertising,  technical 
support  and  full  back-up  service. 

For  additional  information  call  toll  free 

1-800-321-3670 

Ohio  Residents  Call  Collect 

1-216-255-1617 


the  COMPUTER  BUS 

personals,  business  -  computer  systems 


the  COMPUTER  BUS.  101  River  St.,  Grand  River,  Ohio  44045 

Authorized  f<TA,R\®  Dealer 


IP' 


IHILNTINeirCN 


0 

CCMIPlLTIINe   I 


! !    ONE  OF  THE  WORLD'S  LARGEST  INVENTORIES 


Now  Selling  Atari®,  PET®,  TRS-80®  Software 


Atari  ^ 

PokerSo)ilaire(cass.| 514.95  no. 

Gomoku  (cass.) S19.95  no. 

Reversi  icass.) 319, 95  no. 

Cypher  BowHcass.J  S29.95  no. 

Rescue  at  R\ge\  Icass.) 529.95  no. 

Star  Warrior  (cass.) S39.95  no. 

Invasion  Orion  (cass.) 324  95  mm 

Datestoneso1Ryn(cass.) 5i995rto. 

Cofldici  2500  (cass.)         Si  5  00  no. 

Empire 01  IheOvermino (cass. I $3500  no. 

Tanhlics  (cass.) 324.00  no. 

Atari'  Mailing  List  |disi<)  524  95  no. 

Atari'  Character  Generator  (disk) 519.95  no. 

TeKl  Wiiard  |disk) 399  95  no. 

Alan  •  Character  Gen.  (casS.)  SI  5  96  no. 

Le  Slick     339,95  now 

Checker  King  (cass  ) 31 9,95  no. 

MtcroChess  Icass.)    , 51995now 

Survival/ Adventure  (disk)    524  95  now 

3-D  Supergraphcs  (disk) 539  95  no. 

3-D  Supeigraphics  icass.) S39 95  no. 

Mind-Bogglersl|disk) Si 9 95  no. 

Wind-Bogglers  I  icass.) .515  95  no. 

VersaWriler  Graphics  Tablet 5300,00  no. 

Hidden  Words  Si7  50no. 

Spatial  Relations S17,50  no. 

Word-Scramble SIS  00  no. 

Preschool  Fun  St5  00  no. 

Fastgamrrran  Icass  ) S19  95  no. 

Assembler  (cass.  I 524  95  no. 

6502  Disassembler  Icass.)  SIvaSno. 

6502  Disassembler  Idisk) SI4,9S  no. 

Tank  Trap  (cass, )    St  1  95  no. 

Tank  Trap  (disk) St4,95  now 

Tan  Trek  Icass.) 511,95  no. 

OS  Forth  (disk) S79  95  no. 

Slarbase  Hyperion  (disk)  .,...,.,.   .522  95  now 

Name  Thai  Song  (cass.) S14  95  no. 

Jaw  Breaker  (disk)    529  95™. 

Porrtopoly  |disk| $29  95  no. 

The  Broker  |CCl)  Idisk)    S99  95  no. 

Super  ^k)dem  Pak  (CCI)  (Disk) S49  95  now 

Alan-  Snuti  (CCI)  (disk) 529,95  no. 

Utility  Man  (CCI)  (disk)  S99  95  no. 

TanMics  (cass)   S24,00  now 

Fanlasyland  (disk)    559  95  no. 

Empire  ol  the  Overmind  Icass]  $30  00  no. 

Bridge  2  0  Icass)  Si7B5now 

rsiomirKies  Jigsaw  (cass)  Dynaco*np    S16  95  now 

Intruder  Alert  (cassi    516  95  no. 

Alplia  Fighter  (disk) no. 

Compu-read  Idisk)     SJ9  95  no. 

Letter  Pertect  (disk) 3150.00  now 

Sammy  Sea  Sarponi  (Cass)  PDI 516.95  no. 

Cribbage  (Thesis)  (Cass)  S15  00  no. 

Visicalc   3200  CIO  now 

Kross  N  Ouoies  PDI  iCass)   516  95  no. 

Star  Raiders  (carl) S39  95  now 

Slock  Chaning         524  95  no. 

Adv«ntljrt lnt*mallonal   10%'tSXott 

Alan- Salan  (CDS)  Idisk) 

Alan-  Salan  |COS)  Icass) 

Typing  Tutor  HMAGE)  ICass) 

16K Ram  (Alan-) 

ComputalKjn  {Thesisl  (cass) 515. C 


tll.T4 
fl*.«« 
fl*.M 

tM.44 

()3.«4 

tl1.S4 

fil.»« 

$1«.*4 
$M.44 
$11.34 
t1*.*4 


f13.3« 
t*3.94 

t1*.«4 

tii.a4 

»33.«« 
(33.«« 
$■*.«« 
f13J4 
«1S4jM 
tIS.44 

tl3.S4 
tl3.M 

»!»*• 
111.14 
tl«.14 
tll.44 
*l«.14 
tll.44 
tl«.t4 
f«T.«4 
*lfJi4 
I11.44 
>ls.4a 

(1S.44 
t«4.M 
$41.44 
$13.44 
$«4.«4 
$10.44 
$M.«4 
$13.44 
$13.14 
$14.34 
$14.34 
$l».*4 
$13.44 

$I1T.44 
$14.34 
$13J4 

$l4t.«« 
$14.34 
$33.«« 
$11.14 
tug.  imtmU 
$33.*4 
$13.44 


$13.M 


Pet 


'.R 


AVALON  HILL  GAME  COMPANY 

B.  1  Nuclear  Bom&er  icass  I SlSOOno. 

Midway  Campaign  (cass.) 515 OO  no. 

No.  Atlantic  Convoy  Raider  Icass.) S15  no. 

Nukewar  Icass.)  ....  .31500  no. 

Conllict  2500  (cass.) 515  00  no. 

Pianel  Miners  (cass) Si50o  no. 

Computer  Acquire  icass.)  520  00  no. 

Lords  of  Karri^a  (cass  )  ,  520  00  no. 

AUTOMATED  SIMULATIONS 
Introauclorv3-Pack(disk| 549  95  no.      $1*.*T 

(Rescue.  Mortoc  s,  and  Datesiones) 

Rescue  ai  Rigel  (cass.) 529  95  no. 

Temple  ot  Apshai  (cass.)  539  95  no. 

HelKtre  Warrior  (cass  I   539  95  now 

Starfleel  Onon  (cass  1      3Z4  95  no. 

Invasion  Onon  [cass  i 524  95  now 

MdiIoc  s  Tower  (cass  )     S19  95  no. 

Datesiones  01  Ryn  tcass  )  519  95  no. 

PERSbHAL  SOFTWARE 

VisiCalC  (disK)  5199  95  f 

Checker  King  (cass.) S19  95  now 

Gammon  Gambler  (cass.)  519.95  no. 

MicroChess  (cass.) 519  95  no. 

Bridge  Partner  |cass  ) .319  95  no. 

Time  Trek  [cass.  1    319  95  now 

UNITED  SOFTWARE  OF  AMERICA 
KPAM(diSk)    .  $99  95  no. 

Super  KRAM  IdiskJ 5175  00  no. 

Request  (disk) 5225  00  now   $1t1.1T 

Thinker  (disk)    $495  00  no.    $41«.TT 

Space  Iniruders  (cass  )  319.95  no.     $14.VT 

AIIMICRO-ED l«%<MfU*l 

All  Microcomputer  Workshops    13%  ©f#  ll»t 

VIC  SOFTWARE 

Addcom  Missile  Commander $14.M 

Channel  Vic  Data  Logger  13.14 

MMA  Star  Command  $•.•• 

Tl  S  Basic  Programming  I $1  ¥.44 


tii-rT 

$11.77 
$11.77 
$11.77 
$11.77 
$11.77 
$14.«7 
$1*.*7 


$33.47 

$33.«7 
$33.«7 

$11.17 
$11.37 
$14.«7 
$14.«t 

(1*7.77 
$14.«7 
$1«.«7 
$14.«7 
$14.17 
$14.»7 

$*t.*7 
tl4«.77 


TRS-80^ 

BIG  FIVE  SOFTWARE 


VISICALC 

Special  for  Pet,  Atari  &  Apple 

Regular  $200.00  List 

$149.00 


Super  Nova  (cass  I 
Gaiaiy  Invasion  (cass.) 
Attack  Force  Icass  1 
Cosmic  Fighter  (cass  1 
Meteor  Mission  II  (cass  ) 

BRODERSUNOSOF 

Galactic  Trilogy  (disk) 

S1595na. 
51595  no. 
31595  no. 
515  95  no. 
515  95  now 

TWARE 

.539  95  no. 
.SU  95  no. 
.514.95  now 
.SI4.95  no. 
.519.95  no. 

S24  95no. 
.524  95  no- 
.S24  95  no. 
.319  95  no. 
.319.95  no. 
.519.95  no. 
.529.95  no. 

S29.9S  nc 

ARE 

520  95  no. 

S20.9Sno. 
.520  95  no. 
.520.95  no. 
.530  95  no. 
.520  95  no. 

S20  95no. 

520  95  now 

529  95  no. 

S14  9Sno. 
.514  95  no. 
.514  95  no. 

$14.95  no. 
.514.95  no. 
.514.95  no. 

$14.95  no. 

514  95  no. 

S14  95no- 
1»%t>  I3« 
I»^t>  1IV 
.••%I*I3« 
t*%«*1S« 
«*%t*l3^ 

si3.sa 

$13.H 
$13.M 

•13.H 

ti3.sa 

t33.M 
•  13.M 

ti3.ta 

Galactic  Revolution  (cass ) 
Tawala  s  Lasi  Redoubt  icass  | 

DATASOFT 

lago  Idisk) 

Fooibail  Classics  (disk) . 

t12.M 
t1t.M 

•11. ii 
S31.13 

tit.ia 

(14.M 

Football  Classics  (cass  )  

Arcade. 80  Icass  )            ...... 

S1S.M 
SI  CM 

$3S.3a 

sees  (COLOR)  (cass) 

ACORN  SOFTW 

Invaders  From  Space  (disk) 
Duel-N-0(oids(disk| 

tas.3a 

$17.71 
$■7.7$ 
$17.7$ 

$17.73 

$■7.7$ 

$17.73 

Gammon  Challenger  Id^Sk) 
Everest  Explorer  (disk)     , 
Superscript  Idisk) 
System  Savers  Icass  ) 
Invaders  From  Space  (cass.) .. . 

$17.73 
$17.73 
$13.33 
$ll.«3 
$13.43 
$11.43 

$11.43 

Pigskin  [cass  )      

$11.43 

Quad  (cass.)    

$11.43 
$11.43 

Gammon  Challenger  (cass.) 
Everest  Explorer  [cass  1 
All  Adventure  International 
All  Automated  Simulattons 

All  Avalon  Hill     

All  Hayden    

All  Microsoh    

$11.^3 
$11.43 

.OffLtol 
.OHUH 
.BHU*! 

.•fILM 

Apple 


See  full  page  o\  Apple'  products  elsewhere  in  this 
magazine. 


Call  Toil-Free 
800-344-4111 

(Outside  California) 


Gorgon   

Word  Siar      

Mail  Merge , 

Super  Son  

VisiCalc  3  3 

Wurst  ol  Huntington  Computing  . 

Nibble  Express 

Soil  Porn  Adventure 
Time  Lord 
French  Hangman 
Ahcia-Sp  bilingual  reader 
HIH  Stock  Trader 
Crow(ClA| 
All  Edu-Ware 


S39  95no.  $33.**  VersaCalC SlOOOOno.      $34.** 

.$37&00no.  $13*.**  Hebrew     SeOOOno.      $S«.t« 

5i2500no.  $134.1«  All Serendipny t*%t«  13%*tf Uat 

.S20000now  $1»«.*«  AllSinus       IS^-MtUat 

520000  no.  $14«.a4  All  Syt»x  Courses 1«%<*  13%MtU«t 

$1«.*«  Win  at  the  Paces 539  95  no.      $33.*« 

51295  no.  $I1.*«  OiskPrep S25  00  no.      $11.1* 

.  529g5n«.  $33.3«  PLE  Chip 56000no.      $S4.»» 

$29  95  no.  $13.33  We  maintain  *  hug*  Invcntoty  of  tonwir*  for  ApfiM '  and 

529  95  nw  $13.33  hardware  Call  us  toll  tree  (outside  Calil )  Id:  the  latest  prog- 

529  95  no.  $13.3*  rams  We  also  Stock  a  large  supply  ol  computer  txx}k5  Visit  us 

5190  00  no.  $141.43  in  person  al  our  new  3300-5quare  loot  slore  al  1945  South 

535  00  no.  $3t.4*  Dairy  in  Corcofan.  Caiit 

I«%»«  13%  •MUM 


APPLE  is  a  registered  trademartc  of  Apple  Computer,  Inc. 


0 

SI 

fil 
a 

!l 

a 

B 
El 
B 

s 

B 

s 

B 
9 
B 
0 
B 
B 
B 
B 
B 
B 
B 
B 
B 
fl 
fl 

g 

B 
-B 

fl 
B 


HUMTINGYON  COMPUTING 

Post  Otiice  Box  1235 
Corcoran.  Calilornia  93212 

B"  Order  by  Phone  800-344-41 11 
In  California  (209)  992-541 1 


I 


Call  us  for  any  Software 

not  listed  here.  Most  Prices  are 

15%  Off  List 


9§ 


We  take  Ma^lefCa'fl  Of  VJSA  i include  card 
"  and  eitpitai'On  daiei  Cai'tom.a  festdenis 
aoo  6  --  tai  Include  S2  00  toi  postage 
Fo'Cign  and  ^a'dware  e«tr3  Send  tor  free 
caTaiog  Pnces  subiecTio  cnange 


48 


COMPUTII 


February,  1982.  Issue  21 


TELECOMMUNICATIONS 

Why  300  Baud? 

Michael  E.  Day 

Chief  Engineer,  Edge  Technology 


Time  plays  a  very  important  role  in  telecommuni- 
cations. Every  industry  builds  up  its  own  group  of 
words  and  terms  to  define  those  things  it  deals  with 
that  cannot  be  readily  described  with  everyday 
language.  The  telecommunications  field  has  more 
than  its  share  of  buzz  words.  Close  analysis  shows 
that  many  of  these  words  deal  with  time  and  time- 
related  things. 

Time  is  important  in  all  aspects  of  telecom- 
munication, from  the  transmission  of  a  single  bit  of 
information,  to  the  overall  system  performance. 
Although  there  are  no  exact  limits  to  the  use  of 
time  as  it  relates  to  telecommunication,  there  are 
practical  limits  and  deterioration  effects  which 
must  be  ccjnsidered  when  designing  a  system. 

There  are  many  factors  which  must  be  taken 
into  account  when  designing  a  telecommunications 
system.  The  purpose  of  the  system  generally  deter- 
mines what  methods  will  be  used.  Of  major  impor- 
tance is  the  amount  of  information  flow  that  will 
occur.  This  will  generally  determine  the  minimum 
acceptable  system  communication  speed. 

Short  Messages  Permit  Slow  Speeds 

If  the  message  lo  be  sent  is  relatively  short,  and 
little  or  no  response  is  expected,  then  very  slow 
system  speeds  can  be  acceptable.  Western  Union 
makes  use  of  this  on  their  TELEX  network  which 
operates  at  6.7  characters  per  second.  A  slow  system 
speed  has  the  advantage  of  using  only  a  small 
amount  of  the  communications  bandwidth.  This 
means  that  more  systems  can  be  installed  on  the 
same  communications  link  and  can  thus  reduce  the 
per-user  cost  of  the  communications  system.  The 
TELEX  system  serves  users  who  must  be  sure  that 
their  messages  get  to  the  parties  to  which  they  were 
sent  in  a  short  period  of  time,  but  at  low  cost.  (In 
some  ways  it  can  be  cheaper  to  send  a  TELEX  than 
it  is  to  send  a  letter). 

Another  low  cost  system  structure  is  the  mes- 
sage forwarding  system.  Here  higher  communica- 
tion speeds  are  allowed,  but  direct  communication 
with  the  target  party  is  not  allowed.  Instead  the 
message  is  built  up  at  a  location  close  to  the  sending 
party  and  then  transmitted  to  the  target  party  at  a 
time  when  the  cost  is  at  the  lowest  rate.  In  the  case 
o^ packet  switchers,  it  is  sent  when  a  communications 
link  becomes  available. 


When  a  large  amount  of  data  is  to  be  sent,  the 
speed  of  the  communications  link  becomes  impor- 
tant. Transmission  at  higher  speeds  requires  a 
larger  communications  bandwidth.  Because  of  this, 
there  is  an  associated  increase  in  the  cost  of  the 
communications  link  as  well  as  the  equipment 
required. 

Between  these  extremes  lie  general  informa- 
tion communications  systems  involving  a  low  to 
medium  amount  of  data  transfer.  Often  this  occurs 
in  conjunction  with  user  interaction  with  the 
data  flow.  This  is  the  area  where  most  computer 
use  occurs. 

Although  the  exact  system  configurations 
change  as  technology  changes,  the  general  structure 
of  use  remains  relatively  constant.  Any  change  in 
one  area  of  the  telecommunications  field  tends  to 
affect  the  other  areas  in  some  way. 

The  Three  Common  Computer  Modems 

There  are  three  types  of  modems  that  the  average 
computerist  encounters:  1.  The  103  style  modem 
(the  most  commonly  used).  2.  The  202  style  modem 
(far  less  common,  but  it  has  the  advantage  of  higher 
speed  at  a  reasonable  cost,  but  with  an  increase  in 
complexity  of  use).  3.  Finally,  the  newer  2 1 2 A  style 
modem  combines  the  higher  speed  of  the  202  with 
the  ease  of  use  of  the  1 03  (but  costs  more). 

The  202  modem  is  sort  of  an  ugly  duckling  in 
the  telecommunications  field.  Il  has  the  advantage 
of  higher  speed  than  the  1 03,  yet  it  can  be  built  at  a 
lower  cost.  The  problem  comes  from  its  complexity 
of  use. 

The  202  is  a  half  duplex  modem.  This  means 
that  it  can  only  transmit  in  one  direction  at  a  time 
and,  thus,  reqtiires  some  amount  of  computer 
control  over  its  use.  If  the  intended  use  requires 
high  speed  at  lost  cost,  this  is  normally  considered 
an  acceptable  trade  off.  If  the  computer  control 
requirement  is  not  acceptable,  the  higher  cost 
2I2A  modem  is  used  to  achieve  high  speed  without 
computer  control.  If  cost  is  important,  the  103  is 
used. 

Although  the  103  is  more  expensive  to  make 
on  a  price/performance  basis,  there  is  a  demand 
for  the  low  cost  1 03's.  They  are  mass  produced  and 
mass  distributed  at  low  profit  margins,  and  are 
often  of  lower  quality- 

Acoustic  Versus  Direct  Connect 

The  modems  come  in  two  major  classifications,  the 
acoustic  type  and  the  direct  connect  type.  Until 
recently,  the  acoustic  was  the  most  popular  with 
the  general  user.  This  was  due  largely  to  regulations 
which  inhibited  the  direct  connection  of  modems 
to  the  p'hone  lines.  There  are  still  many  regulations 
which  inhibit  this,  but  they  have  been  reduced  to 
the  point  that  the  general  user  at  least  can  consider 


'  i't-1 


ja« 


BETA  32K  BYTE  EXPANDABLE  RAM  FOR 

6502  AND  6800  SYSTEMS 

AIM  65     KIM     SYM      PET    S44-BUS 

•  Plug  compatible  with  the  AIM-a'j/SYM  expan- 
sion connector  by  using  a  right  angle  connec- 
tor (supplied), 

•  Memory  board  edge  contiector  plii^s  into  the 
6800  .S44  bus. 

•  Connects  to  PET  using  an  adaptor  cable. 

•  Uses  -t-SV  only,  supplied  from  the  host  com- 
puter. 

•  Full  documentation.  As.sembled  and  tested 
boards  are  guaranteed  for  one  full  year. 
Purchase  price  is  fully  refundable  if  board  is 
returned  undamaged  within  14  davs. 

Assembled  with  32K  RAM $349.00 

&  Tested     with  16K  RAM 329.00 

Bare  board,  manual  &  bard-to-get  parts...  99.00 
PET  interface  kit.  Connects  the  32K  RAM  board 
toa4Kor8KPET ■$  69.00 

See  our  full-page  ad  in 
B  YTE  and  INTERFA  CE  A  GE 


wabash 


8"  or  514"  rieilble  diskelles  certiHed  lOOt^o  error 
free  with  manufacturer's  5-year  limited  warranty 
on  all  8"  media.  Soft-sectored  in  boxes  of  10, 
5'/*"  available  in  lO-seclor. 
(Add  S3.(XJ  for  plastic  iibranj  raaes) 

B"  single  sided,  single  density...... S  27,50 

8"  single  sided,  double  density 33.50 

8"  double  sided,  double  density 45.50 

5'<"  single  sided,  single  density 27.50 

5'''V  single  sided,  double  density. 29.50 

5'/4"single  sided,  double  density,  lO-seclorjjg  50 

TEKMS:  Minimum  order  $15.00.  Minimum  ship- 
ping and  handling  SJ.OO.  Calif,  residents  add  6% 
sales  Ian.  Cash,  checks.  Mastercard,  Visa  and  pur- 
chase orders  from  qualified  firms  are  accepted. 
(Please  alio*  iwo  weeks  for  personal  checks  10 
clear  before  shipment.)  Product  availability  and 
pricing  subject  to  change  without  notice. 
INTERNATIONAL  ORDERS;  Add  15  ■?  in  pur- 
chase price  Jiir  all  order.t.  Miniinttm  fihippiii^ 
charge  it  $20.00.  Ordcm  with  iu.'iujjiricnl  /nnris 
icill  be  delayed.  Exrets  jtmdi  will  he  returned 
uilh  your  nrdtr.  All  prices  ore  L'.S.  onli/. 


PAPER  TIGER 
PRINTERS 

IDS  460C  9x9  Dot  Matrix  Printer saW.OO 

IDS  560G  Wide  Carriage  Printer 1099.00 

TERMINALS 

ADDS  Vicwpoini S569.l)0 

rckVidco9IO 579.00 

Tele  Video  9I2C 679.00 

TeleVideo  920C 729.00 

TcleVidco  950   929.00 

8"  DISK  DRIVES 

Shugart  801B S399.00 

NEC  FDlieO  (double  sided) 569.00 

DYNAMIC  RAMS 

41  16  COOnM sei  of  8 S24.00 

4l64|64Kxl) SIS.OO 


COmPUTER    DeUICB 

19 so  UJ.COUini  RV£. 

ORflnGE.     CA  99668 

(714)633-7980 


HAVE  YOUR  CAKE 
AND  EAT  moo 


rrS  A  PIECE  OF  CAKE  TO  COMNECT  AM  R  CTel< 
TRIX I  iriTERFACE  TO  YOUR  OUVETTI  PRAXIS  30 
OR  35  CORRECTING  ELECTRONIC  TYPEWRITER. 
DAISY  WHEEL  QUALITY  AT  DOT  MATRIX  PRICES! 


•  10+  CPS 

•  15MIMUTEiriSTAL±AT10M 

•  HALF  SPACE  JUSTIFICATION 

•  CABLE  REMOVES  IM  SECONDS 

•  TypEWRfFER  FUNCT.  UNIMPAIRED 

•  AVAILABLE  NOW:  ATARI  &  APPLE 

•  OTffER  DIRECT  COMNECnOfiS 
AMD  RS232  AVAILABLE  SOON 


•  PRINT  AND  PRINT  "N  OPERATE 

•  NO  INTERFACE  NEEDED: 

USES  FRONT  CONNECTOR  ATARI 
USES  CONTROLLER  PLOQ  -APPLE 

•  PRICE:  S215- APPLE  ADDS  10 
tBASED  ON  WARDS  PR30  PRICE 

•  TYPEWRTTER  AND  SERVICE 
WIDELY  AVAILABLE 


12225  SW  2nd/StJrrE200  -£ 
P.O.B.  CCC 
BEAVERTOM,  OR  97075 


EPROM 

PROGRAMMER 

KITS 


Stiown  assemftletJ  EPROM  noi  ir^ciuded. 


is»». 


m'H 


For  single  supply  2516.  2716  &  2758  EPROMS.  Verify  erased. 
Program  -  entire  or  partial.  Auto  verify  after  programming. 
Transfer  contents  to  RAM  lor  modifying  or  duplicating. 
Select  Documentation  for:  Use  with: 

6502  6820  PIA  or  6522  VIA 

6B00  6820  PIA 

6809  8820  PIA 

e080/8085/Z80  8255  PPI 

Documentation  Includes  schematic,  instructions  for  construction, 
check-out  and  use.  and  software  listing  for  specified  f^PU. 
Complete  kit  of  parts  (includes 

Welcon  24  pin  ZIP  socket) $  39.95 

Bare  PC  board  and  Documentation $  15.00 

Software  listings  for  additlonai  IvIPUs 

(with  purcfiase  of  Kit  or  PC  board) S     5.00 

Ordering:  SpecUy  MPU  Add  SI  for  po$lagB  S,  handling.  Overseas  add  $2  A117 
resJdeni5  add  5%  safes  ra^.  Choch  or  Money  Orders  tor  SU  S  Ptione  orders 
stlrpCO.D   602.839.8902 

Micro  Technical  Products 

SI-!  W.  Keating  Ave.,  Dept.l^   •   l^esa,  Arizona 85202 


60 


COMPUTE! 


February,  1982  Issue  21 


it  as  an  (jption.  It  is  actually  possible  to  build  a 
direct  connect  modem  less  expensively  than  the 
acoustic  version,  but,  imtil  the  regulations  are 
further  redticed  and  demand  increases,  this  will 
probably  not  happen. 

Acoustic  versions  of  the  202  modem  are  essen- 
tially nonexistent.  The  main  reason  for  this  is  the 
telephone.  The  telephone  uses  a  carbon  micro- 
phone to  convert  sound  into  electricity.  The  carbon 
microphone  is  very  rugged,  cheap  to  build,  has  a 
high  gain  factor,  and  has  naltnal  filtering  charac- 
teristics in  the  frequency  range  of  the  human  voice. 
Unfortunatclv,  it  is  also  very  noisy  and  disruptive 
to  the  signal  that  it  converts. 

The  202  cannot  work  within  this  environment. 
The  212A  modem  fares  a  little  better  because  the 
part  of  the  signal  it  uses  for  data  transfer  suffers  a 
minimal  amount  of  disruption  from  the  carbon 
microphone.  The  103,  howe\er,  works  reasonably 
well  with  the  carbon  microphone.  This  is  due  to 
the  narrow  bandwidth  used  for  transmission,  as 
well  as  the  high  redundancy  in  the  signal  used. 
Although  some  103  modems  are  capable  of  opera- 
tion at  speeds  of  up  to  600  baud,  the  disruption  of 
the  carbon  microphone  tends  to  limit  the  speed  to 
300  baud.  If  the  phone  system  is  in  good  workig 
order,  it  is  possible  to  operate  as  high  as  450  baud. 
Alternativelv.  if  the  system  is  in  poor  condition,  it 
may  require  that  operation  be  redticed  to  200 


baud,  150  baud,  or  even  as  low'  as  1 10  baud.  Gen- 
erally speeds  below  1 1 0  baud  do  not  actually  achieve 
any  im])rovement  in  reliability  of  operation  on 
the  103. 

If  problems  are  encountered,  or  higher  speeds 
are  desired,  the  direct  connect  modems  are  gener- 
ally required.  If  only  a  slight  improvement  is 
needed,  some  degree  of  improvement  can  some- 
times be  oblainccl  by  replacing  the  carbon  micro- 
phone with  a  capacitor  (or  condenser)  microphone 
(sometimes  referred  to  as  zsuperinike).  The  capacitor 
microphone  is  more  expensive  to  make  than  the 
carbon,  but  does  not  disrupt  the  signal.  There  is 
one  disadvantage  to  most  capacitor  microphones. 
It  requires  power  to  operate,  and  it  gets  this  power 
from  the  phone  line.  If  another  phone  comes  on 
the  line,  it  can  steal  the  power  away  from  the  ca- 
pacitor microphone  and  inhibit  it  from  working. 
This  is  particularly  true  if  the  other  phone  has  a 
carbon  microphone  in  it  which  tends  to  drop  the 
power  well  below  the  capacitor  microphone's  nor- 
mal operating  level. 

The  103  type  modem  has  become  a  standard 
for  medium  speed  communications  over  the  tele- 
phone network  not  because  someone  felt  it  should 
be,  or  because  someone  made  it  so.  It  became  the 
standard  because  it  was  the  optimal  solution  to  the 
problem  at  hand.  © 


Reading  The  Status  Register 


Bob  Sullivon 
Oak  Park  IL 


Here  is  a  way  to  quickly  analyze  the  flags  in  the 
6502  Status  Register.  When  you  are  working  in 
macliine  language,  the  branch  (BNE,  BCC,  etc.) 
instructions  automatically  check  these  flags  for  you 
and  make  their  "decisions"  based  on  the  condition 
(or  status)  of  a  fiag.  However,  there  are  times  when 
yoit  need  to  analyze  the  Status  Register.  When 
debugging,  for  example,  you  might  place  a  BReaK 
instruction  to  slop  the  program  and  allow  you  to 
examine  the  condition  of  a  Hag. 

Each  flag  is  a  bit  within  the  Status  Register 
byte.  When  you  see  that  the  SR  has  $FI  in  it,  how 
quickly  can  you  determine  that  the  Over  How  Hag  is 
set?  The  table  below  does  the  job: 


CARRY  BIT-right  digit 
St'tifodd;  1,3,5,7,9,B,D,F 
Clear  if  even:  2,4,6,8,A,C,E 

ZERO  BIT-right  digit 
Set  if:  2,3,6,7,A,B,E,F 
Clear  if:  0,1,4,5,8,9,C,D 

INTERRUPT  BIT-right  digit 
Set  if:  4,5,6,7,C,D,E,F 
Clear  if:  0,1,2,3,8,9,A,B 

DECIMAL  MODE-right  digit 
Set  if:  8,9,A,B,C,D,E,F 
Clear  if:  0,1,2,3,4,5,6,7 

BREAK-left  digit 

Set  if  odd:  1,3,5,7,9,B,D,F 

Clear  if  even:  0,2,4,6,8>A,C,E 
OVERFLOW 

Set  if:  $C0  to  $FF 

Clear  if:  $00  to  BF 

SIGN  BIT 

Positive:  $00  to  $7F 
Negative:  $80  to  $FF 


© 


® 


00 


DOS  FOR  AIM-65:  '499: 

COMPLETE  I 

INSTANT  EASY  ACCESS  TO  YOUR  AIM -65  PROGRAMS! 
MANIPULATE  OBJECT  FILES  AT  THE  TOUCH  OF  A  KEY. 
NEW  BYTE-DOS  DISC  OPERATING  SYSTEM. 
153K  BYTES  ON-LINE.  INEXPENSIVELY! 


BYTE-DOS  COMMANDS 


•  FORMAT  -  Prepares  New  Disc 

•  BAD  SECTOR  SCAN  •  QC's  Disc 

•  DUMP  ■  RAIVl  File  to  Disc 

•  LOAD  ■  Disc  File  to  Ram 

•  LIST  -  Prints  Disc  File  Names 

•  ERASE  -  Eliminate  a  File 

•  UNERASE  -File  Recovery 

•  RENAME  -    Rename    a    File 

•  COPY  -  Copy  1  File 

•  TRANSFER  -  Copy  Complete  Disc 

•  KOMPRESS-  Optimizes    Disc  Space 

AND  MORE! 

IT'S  EASY  AND  FUN  TO  USE! 


BYTE 

MICROSYSTEMS 

COR 

P          O          R          A 

T          1          O          N 

1477  ElKA  AVENUE,  SAN  JOSE,  CA  951 29 

408/444/055P 

master  charge 


•  BYTE-DOS  OPERATES  WITH  THE  AIM-65  MONITOR 
BASIC,   ASSEMBLER,    EDITOR,    PL/65  AND    FORTH. 
ACCESS  IS  THROUGH  PROGRAM  I/O  AND  F1-F3  KEYS 
BYTE-DOS  SUPPORTS  ONE  OR   TWO  5%"  OR  8" 
FLOPPYSf 

•  BYTE-DOS   $499   SYSTEM    INCLUDES    DISC    CON- 
TROLLER  CARD,   TEAC  FD-50A   DISC  DRIVE  (153K 
FORMATTED  BYTES),  BYTE -DOS  SOFTWARE  SYSTEM, 
CABLES,   CONNECTORS,  MANUALS.   COMPLETE!  JUST 
PLUG  IT  TOGETHER  AND  USE! 

AIM-65  is  a  trademark  of  Rockwell  International 


SEND  ME  THE  FULL  STORY! 

:  IMame 

• 

;  Company                                                                           - 

.   ArlrjrPss 

■  City                            State 

:  Tplpphnnp 

Zip         ; 

D  home       ; 
0  work         : 

;  Q  1  own  an  AIIVl-65. 

:  C]  I'm  thinking  of  buying  an 

AIM-65.               : 

;  D  Send  full  BYTE-DOS  Data 

', 

52 


COMPUTEI 


February,  1982.  issue  21 


Book  Review: 


Some  Common 
Basic  Programs 


Jim  Butterfield 
Toronto,  Canada 


This  book,  a  collection  of  76  short  programs,  is  by 
Lon  Poole  and  Mary  Borchers,  There  are  editions 
for  several  popular  machines,  with  additional 
authorships:  Carroll  Donahue  contributed  to  the 
PET/C;BM  edition,  Karl  Koessel  to  the  TRS-8() 
edition,  and  David  M.  Castlewitz  to  the  Apple  II 
edition.  There's  an  Atari  edition,  too.  Cassette  and 
diskette  versions  are  available. 

The  book  is  well  established.  It  may  be  a  defin- 
itive answer  to  the  question:  What  serious  things 
can  1  do  on  mv  small  computer  without  using  data 
files? 

Three  Major  Areas 

The  programs  break  into  three  major  sections, 
with  a  few  programs  left  over  at  the  end.  It  might 
have  tieen  useful  to  have  broken  the  material  up 
into  chapters.  The  first  twenty  programs  are  finan- 
cial; the  next  twenty-seven,  mathematical;  and  the 
third  section  contains  twenty  stadstical  programs. 
Nine  miscellaneous  programs  are  tacked  on  the  end. 

The  financial  programs  are  quite  well  com- 
mented, and  often  include  optional  coding  for  per- 
forming monthly  (as  oppcxsed  to  yearly)  calculations. 
Serious  users  will  probably  want  to  combine  several 
short  programs  together;  the  book  does  not  show 
how  to  do  this,  but  it  is  not  a  difficult  task.  Users 
should  not  use  these  programs  as  the  final  word; 
financial  methods  differ  in  different  organizations 
and  the  serious  user  will  hopefully  know  what 
modifications  will  be  needed  lor  his  circumstances. 

The  mathematical  programs  are  somewhat 
more  cryptic;  it  is  expected  that  the  user  is  quite 
familiar  with  the  material.  For  example,  three 
Integrati(jn  programs  are  given;  the  user  is  expected 
to  choose  Simpson's  Rule,  Trapezoidal  Rule,  or 
Gaussian  Quadrature  according  to  his  estimate  of 
which  will  suit  his  needs.  Fair  enough;  the  book 
does  not  attempt  to  be  a  text,  but  just  gives  the 


relevant  coding. 

The  statistical  section  is  a  mixed  bag  in  terms 
of  user  levels.  Some  programs  such  as  .'Vverage 
Growth  Rale  are  easy  foi-  the  naive  user  to  under- 
stand; olhers  such  as  F-Distriliiiiion  recjuire  a 
compiehension  of  statistics. 

Up  Front 

None  of  the  programs  is  huge:  all  aie  easy  to  type 
in.  Worked-through  examples  allow  the  user  to 
check  that  his  coding  is,  indeed,  correct. 

For  the  non-mathematical  computer  owner, 
the  programs  ma>'  seem  to  be  rather  oliscure.  In 
this  case,  the  book  may  seive  as  a  challenge  and  an 
indication  of  the  resources  he  can  tap  if  he  wants. 
Such  things  as  linear  programming  and  regressions 
can  be  remarkably  powerful  tools  to  use  in  business 
...if  you  know  that  they  are  there.  It  might  be  useful 
to  see  a  companion  guide  to  this  book,  explaining 
just  how  effective  some  of  these  nialliemalical 
techniques  can  be,  even  to  the  small  user.  The 
book  doesn't  try  to  do  this:  it  just  plunks  down 
the  coding. 

There  may  be  debate  on  whether  the  best 
mathematical  and  programming  techniques  are 
used  in  all  cases;  to  me,  this  doesn't  matter.  The 
first  thing  to  do  is  to  find  any  way  of  approaching  a 
problem.  After  you  have  one  way,  you  c:an  look  for 
better  ways;  but  finding  thai  first  one  can  l)e  hard. 

Son-Of-Some-Common...? 

There  are  a  couple  o(  books  that  look  like  sequels 
to  the  well-established  SCBP.  Practical  Basic  Pro- 
grams, edited  by  I.on  Poole,  gives  more  programs 
in  a  similar  vein.  Science  atid  Eiigiiiccriiig  Pragraiiis, 
Apple  1 1  Edition  edited  by  John  Heilborn,  delves 
more  deeply  into  mathematics  and  statistics.  The 
books  aie  similar  in  organization  to Sdihc  Common 
Basic  Programs,  but  the  programs  are  longer  and 
there  are  fewer  of  them,  Readers  who  found  the 
first  book  useful  will  undoubtedly  want  to  go  after 
its  successors. 

Some  Common  Basic  Programs  is  nol  a  text- 
book. It  doesn't  teach  you  what  to  do  with  ilie 
programs.  But  it  does  give  you  woiking  programs 
with  documentation. 

For  those  who  know  the  methodologies,  it  will 
be  a  useful  reference.  For  those  who  don'l,  it  may 
open  u\)  new  horizons:  filings  that  vou  didn't  know 
a  computer  can  do.  In  thai  case,  you'll  need  to  look 
elsewhere  to  learn  the  principles  of  (he  new  tech- 
nology It's  often  an  education  to  discover  the 
existence  of  things  you  don't  know.  Or  at  least  the 
start  of  an  education. 


Somi'  (^i)mmon  Basic  Pioiriams.  Lon  I'oolcaiul  M;iiv  Horcheis. 
Osljorno McGraw  HilL  Berkeley.  (1981) 


qUAUTY  AND  VALUE. 

1982  will  find  more  OEM's,  businesses,  dealers  and  personal  computer 
users  turning  to  MICROTEK  than  ever  before. 


TcRWriter-l 


80  Column  Dot 
Matrix  Printer 
(Formerly  BYTEWRITER-1) 

The  Tekwriler-1  printer  is,  dollar  for 
dollar,  the  finest  value  in  the 
industry.  And  we've  proved  it  by 
comparing  the  Tekwriter-1  lo 
the  Epson  MX-80.  Our  print  speed 
is  14  lines  per  minute  faster,  our  life 
expectoncy  is  longer,  the  character 
sets  are  the  same,  and  the 
interface,  warranty  and  printheod 
replacement  cost  are  all  identical.* 
But  the  biggest  difference  is  the 
price.  The  Tekwriter-1  isobout 
$300  less. 

Our  extensive  testinq  has  proved 
that  the  Tekwrifer-1  interfaces 
problem-free  to  most  parallel 
Centronics  and  serial  (RS-232) 
computers. 

The  Tekwriter-1  is  tough  to  beat  for 
performance  and  quality. 

■Data  Source:  Epson  MX.&O  Operation  Manual 


Parallel 
Serial 


$349 
!»389 


TakWriter-2 


NEW!  80/132  Column 
Dot  Matrix  Printer 

The  Tekwriter-2  is  perfectly  suited 
to  personal,  business  or  OEM 
applicotions.  Tekwriter-2  is 
designed  to  occept  single  sheet, 
roll  or  pin  feed  paper.  It  has 
a  9-wire  dot  matrix  impact 
print  head  which  produces  crisp 
characters  and  has  underlining 
capability.  The  printer  is 
manufactured  to  run  extremely 
quietly  even  while  operating  at 
peck  output  levels. 

Tekwriter-2  is  especially  well  suited 
to  handle  an  abundonce  of  text 
entry  because  of  its  data  buffer 
expansion  capobility  to  25K.  This 
ability  makes  it  on  efficient 
graphics  generator. 

Parallel  interface  (Centronics 

type).  Interfaces  oil  models  of 
TRS-80,  Apple,  and  Atari  400/800, 
and  most  computers  with 
Centronics  printer  interface. 


$695 


Peripherals 


16K  Apple  Memory  Board 

Expands  Apple  II  to  64K  RAM 
Memory.  Works  with  MICROSOFT 
Z-80  Softcard,  Apple  PASCAL  and 
Visicalc  software. 

16K-32K 

Atari  Memory  Board 

4116  RAM  (200NS)  Compatible 
with  Atari  400/800 

Paraliel/Seriel  Data  Buffer 
Converter 

Interfaces  with  most  computers  and 
printers  on  the  market  today. 
Switch  selectable  parallel  or  seriol 
inpuf/parallel  or  seriol  output. 
Data  buffer  2K  standard  — 
expandable  to  62K. 
Serial  I/O  BAUD  rates  switch 
independently  selectable. 

Atari  Parallel  or  Serial 
Printer  Cables 

Pre-tested.  Centronics  or  (RS-232) 
compatible. 

APPLE  PARALLEL 
INTERFACE  CARD 


Quantity  and  OEM  discounts  available. 


TRS-80  is  a  Irademarli  of  Radio  Shock,  Inc. 
Apple  II  IS  a  trademork  of  Apple  Compu'er,  Inc. 
AlOf i  400/800  oretrademorksof  Atari,  Inc. 
Microsoft  is  o  Irodemork  of  Microsoft  Consumer 

Products,  Inc. 
Z-80  is  a  trademark  of  Zilog,  Inc 
Visicok  is  o  trodemark  of  Personal  Softwore.  Inc. 


Continuing  our  quest  for  excellence. 


MICROTEKinc 


MICROTEK 

9514  Chesapeake  Drive 
San  Diego,  CA  92123 
(714)  278-0633 
Outside  CAcall 
Toll  Free  (800)  854-1081 
TWX.  910-335-1269 


54 


COMPUTEI 


Febtuatv  1982.  Issue  21 


Multitask: 
A  Realtime, 
IVIultitasking 
Operating 
System  Emulator 

Hal  Bredbenner 
Roleigh,  NC 


Most  home  applications  of  microprocessors  are 
very  basic  and  straightforward  with  the  micros 
spending  99%  of  their  existence  in  loops  waiting 
for  a  key  depression  or  an  interrupt.  The  majority 
of  systems  with  interrupts  use  them  just  for  utili- 
tarian functions  such  as  screen  refreshes,  clock 
increments,  and  keyboard  scans.  If  you  have  a 
PET,  Apple,  Atari,  etc,  you  know  how  the  machine 
really  cannot  do  more  than  one  operation  at  a 
time,  and  it  also  has  a  hard  time  responding  quickly 
to  outside  inputs.  The  BASIC  program  described 
by  this  article  emulates  a  way  to  allow  many 
seemingly  concurrent  operations  to  occur  with  a 
fast  system  response  time  to  the  outside  world. 
Keep  in  mind  that  this  is  an  emulator.  To  actually 
be  realized,  the  concept  would  have  to  be  written  in 
machine  code  form;  however,  the  model  shows  the 
concept  on  the  screen  where  it  can  be  analyzed  and 
easily  understood. 

There  are  two  terms  which  should  be  under- 
stood before  we  continue.  The  first  is  realtime.  An 
ideal  realtime  system  is  one  that  responds  to  a 
changed  input  immediately.  This  response  will  be 
a  change  in  an  output  condition  or  an  internal 
recognition  of  the  input  change.  Ideally,  this 
response  is  immediate.  However,  in  reality,  some 
time  elapses  before  the  realtime  system  can 
respond.  The  faster  the  response  time,  the  more 
efficient  the  system. 

The  second  term  to  be  defined  is  multitasking. 
An  ideal  multitasking  system  is  one  that  allows 
multiple  operations  to  take  place  simultaneously  in 
one  system.  Obviously,  a  single  micro  can  do  only 
one  thing  at  a  time,  but  through  scheduling  of 
desired  tasks  and  assigning  priorities  to  each  oper- 
ation, the  appearance  of  more  than  one  action  at  a 
time  is  accomplished. 


For  example,  let's  design  a  hypothetical  simple 
realtime,  multitasking  system.  The  system  will  be  a 
home  security  system  that  logs  all  its  data  and, 
upon  command  from  a  keyboard,  produces  a 
paper  tape  output  of  this  data.  It  also  has  a  CRT 
display  and  a  battery  back-up  power  system.  The 
system  must  scan  various  inputs  from  the  house 
and  control  outputs  which  would  be  interfaced  to 
lights,  alarms,  and  an  electric  fence.  Since  the 
electric  fence  poses  a  safety  problem  (for  the  good 
guys!),  an  Emergency  Stop  input  would  be  needed. 
Internal  DC  power  supplies  should  be  monitored 
to  detect  system  tampering  and,  if  incoming  AC 
power  is  out  of  tolerance  (for  example,  a  brownout), 
an  alarm  should  be  sounded.  Prior  to  the  back-up 
power  system  running  out,  the  system  should  be 
shut  dovifn.  When  properly  programmed,  the 
system  should  monitor  and  accomplish  all  these 
tasks  concurrently  (if  required)  with  a  fast  response 
time. 

Logically  breaking  down  the  system  software 
requirements,  we  can  see  that  some  tasks  need  to 
be  done  on  a  regular  basis  while  others  only  need 
to  be  done  upon  command  from  the  keyboard  or 
other  in  out.  The  regular  tasks  we  will  call  Auto 
Rescheduling  tasks.  The  tasks  are  called: 

10  DRIVER  Reads  inputs  and  writes  outputs 

AC  PWR  CK  Tests  incoming  AC  power 

DC  PWR  CK  Tests  internal  DC  power 

READKYBD  Scans  the  system  keyboard 

REFRESH  Refreshes  theCRT  display 

These  Auto  Rescheduling  tasks  are  regularly 
performed  by  the  system  and  scheduled  to  be  done 
again  once  they  have  been  completed. 

The  remaining  tasks  are  to  be  performed  only 
when  an  outside  input  requires  them.  In  our 
emulation,  we  can  schedule  one  of  these  tasks  by 
pressing  its  number  on  the  numeric  keys  of  the 
keyboard.  In  the  hypothetical  system,  they  would 
be  initialed  by  the  power  fail  detect  circuitry,  the 
system  keyboard,  or  perhaps  the  Emergency  Stop 
button.  These  tasks  are  called: 

E-STOP  Starts  an  emergency  sequence 

PWR  FAIL  Initiates  power  down  sequence 

MOVE  FILE  Transfers  dau  to  output  buffer 

MEM  TEST  Exerciseand  test  RAM  memory 

PUNCH  DATA  Produces  a  paper  tape 

The  system  would  require  at  least  these  ten 
operations  and,  through  the  use  of  the  emulator, 
we  can  see  how  the  tasks  are  prioritized,  scheduled, 
and  executed. 

In  our  system,  we  would  require  one  master 
interrupt  signal  to  drive  the  entire  process.  Each 
time  this  interrupt  occurs,  the  operating  system 
would  perform  the  same  actions.  The  first  action  is 
to  read  the  status  of  all  the  system  inputs  and  write, 
from  a  RAM  buffer  area,  any  new  output  data. 


NEW  COMMODORE  ADDONS 

RAM-ROM: 

GETS  RID  OF  SAFING  ROM 

*MX-910CBM/PET  RAM/ROM; 

Allows  mulli  ROM  pratecled  programs  using 
the  same  socket  to  be  put  onto  diskette/cassette, 
no  need  to  insert  protect  ROM  in  socket  alter  initial 
load,  eliminates  need  for  ROM  switch  box,  write 
protect  in  software,  decoded  for  dual  ROM  socket 
usage,  4K  expandable  to  8K,  easy  internal  CBM 
installation:  $11 9.95 

*MX-232CBM/PETT0RS-232C 
INIERFACE: 

Low  cost,  bidirectional,  50  to  19,200  baud  rate,  lull 
modem  controls,  parity  allows  for  two  RS-232C  CBM 
ports,  installs  easily  inside  CBM:  Si  99.95 

SX-100 IEEE-488/PET  MODEM  SOFIWARE: 

Best  8 1 0  modem  software,  by  801 0  developer, 
works  with  Source  Micronel  CBM  to  diskCBM  to 
CBM:  $79.95  , 

*MX-200IEEE-488/PEr  PARITY     ^ 
MODEM/SOFTWARE 

Talk  to  a  host  computer  requiring  parity,  all  features 
of  3X232:5399.95 

*MX-903CBM/PETAUTORESET:    | 

Easily  installed  reset  circuit:  $19.95  ' 

ECX  COMPUTER  COMPANY 

-ffl  2678  NORTH  MAIN  ST. 

H         WALNUT  CREEK,  CA  94596     ' 

(415)944-9277  ; 


CLEAR  STAND' 

FOR 

ATARI?  400/800* 
APPLE"!!** 


Send  order 
with  payment  to: 


•  Beautifully  polished 

high  impact  acrylic 

•  Holds  up  to  15"  Dia.  TV/ 

monitor  at  eye  level 

•  Open  design  allows 

maximum  air  flow 

•  Easy  access  to  top 

sides  &  rear  of 
processor 

Dealer  Inquiries  Welcome 

BYTM  Systems,  Inc. 
389  Fifth  Ave.  (Suite  400] 
New  York,  N.Y.  10016 


Allow  4-6  weeks  delivery 

Mail  the  coupon  today 

Send Clear  Stand  (w  S59.95 

Add  N.Y.  Sales  Tax  for  N.Y.  Delivery 


I 
I 
I 

H^  "TM  of  Apple  Compulers.  Inc  H 


Ship  to:   . 
Address: 
City:  


Stale: 


.  Zip: 


'TM  of  Atari,  Inc 


1 
I 

I 

I 


DON'T  ASK  PRESENTS: 


AeilSE 

For  the  APPLE  Il/n+ 
and  the  ATARI  400/800 


Match  wits  with  your  computer  in  an  insult 
war!  With  ABUSE  your  computer  becomes  a 
slightly  demented,  smart-aleck  insult-exchanger. 

•  Millions  of  different  insults. 

•  Understands  and  responds  to  user  input. 

•  Hybrid  BASIC/machine  language  program. 

•  Game  feature:  become  a  Master  of  ABUSE. 

•  Many  surprises  to  discover. 

Release  your  aggressions!  Inflict  ABUSE  on 
anyone  who's  got  it  coming! 

APPLE:  REQUIRES  48K  RAM  AND 
APPLESOFT 

ATARI:   REQUIRES  40K  RAM  AND 
BASIC  CARTRIDGE 


At  your  computer  store  or  send  $19.95  +  $2.00  handling  to: 

DON'T  ASK  -  2265  Westwood  Blvd.  B-150  -  Los  Angeles,  CA  90064  -  (213)  397-8811 


Calif,  residents  add  6%  sates  tax. 


Dealer  inquiries  welcome 


ATARI  IS  1  Iradmam  al  ATARI  MC 

APPLE  IS  a  IraHemart  of  APfl.E  COMPUTER.  INC 


48K  -  w/disk 


THE  FINEST  IN 
FANTASY  GAME  SOFTWARE 


At  Crystal  we  are  doing  our  best  to  provide  the  finest  state-of-the-art  graphic  adventure  software  In  the  world.  Our  list  of  credits  Include  the  first  indoor-     «  ^ng  e  I 

outdoor  graphic  adventure,  the  first  multi-dl5l<  graphic  advenlure,  and  now  for  the  Atari,  the  first  graijhic  adventure  in  the  world  which  includes  screen    IWI    I    EiB  J 

scrolling  and  animation  The  era  of  the  text  advenlure  and  games  which  are  simple'comblnations  of  stat:  c  graphics  and  text  is  rapidly  drawing  to  a  close.  We 

attempt  to  utilize  the  full  potential  of  your  computer  True,  many  of  our  games  use  up  to  48K  and  we  onli  deal  in  disk  products,  but  there  are  a  lot  of  users  out 

there  who  have  worked  hard  to  upgrade  Iheit  systems  to  the  max  and  we  think  they  deserve  games  that  will  give  their  computer  system  a  run  for  Its  money    '*""       W/aJSK 


•  •  •  ADVENTURE  GAMES  •  •  • 

1-THE  HOUSE  OF  USHER- Haunted  house  type  adventure  game  with  scrolling  in  I  ic  Atari  version.  Wander  the  creepy  hallways  of  the  three  ■itory 
castle  based  on  Edgar  Allen  Poe's  short  story  of  the  same  name  Written  in  graphics,  of  course,  with  animation  and  sound  We  have  Introduced  a  new  my  jtery 
for  another  $100  prize  $29  95/1  disk 

2-FANTASYLAND  2041  A.D.-  The  largest  disk  based  adventure  game  In  the  world  (thai  we  know  of)  Enter  the  Hall  of  Heroes  and  prepare 
yourself  for  the  greatest  fantasy-role-playing  game  you  will  see  for  years  to  come.  To  win  you  must  survive  Congoland.  Arabia.  King  Arthur.  Captain  Nemo. 
Olympus  (a  sea  voyage),  an  d  Dante's  Inferno  (Hell  itself)  In  both  the  Atari  and  Apple  versions  it  takes  up  more  than  400,000  bytes  of  memory  and  uses  more 
than  400  hires  screens  The  winner  of  the  contest  described  in  the  manual  with  this  game  will  receive  $  1 000.00  and  a  bronze  trophy.  We  have  pushed  the 
award  date  lorward  to  February  1982  lo  allow  more  people  to  participate  in  the  contest.  3i59  95/6  disks 

3-GLAMIS  CASTLE-  Yes.  Pat  and  I  are  on  our  way  to  Britain  to  stay  in  the  dreaded  Glamis  Castle  If  we  survive  our  real  life  adventure,  we'll  be 
measuring  it  and  will  be  able  lo  provide  you  with  a  3-  D  game  based  on  tfiis  ancient  haunted  situ  where  King  Duncan  met  his  end  at  the  hands  of  Macbeth.  Our 
good  friend.  Mark  Beniotf,  after  much  research,  said  there's  a  mystery  room  that  has  never  b(  en  found  in  this  castle  and  a  half  beast,  half-man  creature  that 
guards  a  treasure  therein  Our  stay  will  be  covered  by  the  British  media  and  we  hope  to  shiire  our  experience  with  you  through  the  writing  of  this  game. 
$49  95/2  disks 

4-BENEATH  THE  PYRAMIDS- You  are  an  archaeologist  in  1932  and  must  find  your  way  through  the  perilous  chambers  beneath  the  pjTamids 
to  discover  a  golden  statue  of  the  cat  goddess  Bast  This  game  is  in  hires  graphics.  Includes  sou  nd,  your  little  man  actually  moves  through  the  corridors  which 
you  can  see  on  the  screen.  The  monsters  are  animated  and  very  agressive.  There  Is  a  new  $.00  prize  for  the  first  lo  solve  the  mystery,  which  is  a  toughle! 
$29.95/1  disk 


I 


•••  SPACE  GAMES  k-kir 

5-GAlACTIC  QUEST-An  excellent  combination  of  Star  Trek  and  Space  Trader.  B.illle  the  animated  Vegan  fighters  as  you  warp  from  galaxy  to 
galaxy  At  the  same  lime,  you  may  land  on  and  trade  wilh  hundreds  of  planets  Super  hires  gra  3hics  and  lots  of  sound.  This  has  been  one  of  our  most  popular 

games  $29  95/1  disk 

6- SANDS  OF  MARS-  Take  an  exciting  voyage  to  the  planet  Mars  via  the  Starship  Herman.  This  game  compared  to  the  rest  is  second  only  to 
Fantasyland2041  A.D.  It  includes  scrolling  on  the  Atari  and  hundreds  of  fullscreen  graphics.  You  can  move  your  little  man  through  the  terrain  of  Mars;  if,  of 
course,  you  survive  the  exciting  journey  to  Mars,  which  occupies  the  whole  first  disk.  There  hi  a  new  mystery  and  another  $1 00  prize  jusi  waiting  for  some 
clever  adventurer  out  Ihera  Good  luck!  $39  95/2  disks 

•  ••  WAR  GAMES  •  •• 

7- WORLD  WAR  III-  You  Atari  gamers  will  have  to  see  this  in  the  Atari  version  to  belltve  Iti  if  your  tired  of  war  games  which  take  1 5  minutes  a  move 
and  have  a  manual  ihe  size  of  a  telephone  book  but  still  want  a  complex,  real-time  action  wa:'gamc-this  is  it!  It  is  designed  for  two  arm-chair  generals  which 
may  manuever  up  to  1 28  seperate  type  of  units  at  a  time.  The  game  displays  a  map  of  Iran  &  Irnq  in  the  first  scenario  and  later  on  you  will  find  yourself  moving 
nuclear  submarines  and  battleships  through  two  world  wars.  This  is  not  a  boring  copy  of  a  boai  d  based  game  but  an  original  war  game  which  takes  a  lot  of  skill 
and  may  take  weeks  to  play  $29  95/1  disk 

8- WATERLOO  II- If  you  had  been  Napolean  would  you  have  done  a  few  things  dlfferttntly?  Well  as  you  approach  this  final  battle  you  are  equipped 
with  the  same  forces,  face  the  same  opposition,  and  survey  the  same  terrain  which  he  did  We  have  done  a  great  deal  of  research  to  make  this  historically 
accurate  as  well  as  extremely  complex  Even  the  angle  of  sight,  fatigue  of  t  he  individual  soldie  •,  and  his  psychological  profile  are  Included  in  the  taiculations. 
Oh  by  the  way.  your  opposition  is  no  slouch  You  may  find  It  more  difficult  to  change  the  course  of  history  than  you  think!  $49.95/2  disks 


•  ••  ARCADIA  ••• 

9-LASAR  WARS-  Hlres-Sd  space  war  simulation.  Protect  the  earth  from  alien  lnvad.>rs.  $29.95 

lO-LITTLE  CRYSTAL-  The  first  of  our  line  of  education  software,  which  will  be  compl  eted  by  December  ll  includes  a  very  fin  e  version  of  Hangman, 
Mr  Music;  which  transforms  the  computer  into  a  piano,  Gunk-a  hilarious  shoot-em  up  game,  and  Storytime-  an  anthology  of  bedtime  stories  featuring 
Herman,  the  cat,  Oscar,  the  Hamster,  and  of  course.  Little  Crystal.  $39.95 

1 1-IMPERIAL  WALKER- A  fine  game  pack  written  by  our  Atari  programmer,  Michael  (graphics)  Potter.  Includes  the  Walker  animation  which  is 
superb,  Gunfight,  and  Lasar  Nim.  a  game  of  "how  many  robots',  $29,95 

12-ADVENTURE  PACK-  (»l  4)  $U2  13-SPACEOUT-(*5-6)  $58 


14-THE  WARRIOR-  (-78)  $64 


15-ARCADE-  (-g-ii)  $60 


Crystal  has  many  other  line  lantasy  and  space  games.  For  a  copy  of  CRYSTAL  VltilON  which  Includes  a  complete  catalog  please  senrf 
$3.00  to  theaddress  below. 

Our  order  lines  are  open  24  hrs.  a  day  7  days  a  week. 
(408)  778-2966  CRYSTAL  COMPUTER  1 7120  Monterey  Rd..  Morgan  Hill.  CA  95037 


48K  -  w/disk 


THE  FINEST  IN 
FANTASY  GAME  SOFTWARE 


"Houjng  previewed  over  fifty  o/your  competitors^  games.  I  can  assure  vou  (hot  your  use  of  scrolling  far  exceeds  an^ithing  I've  seen  for  the  Atari  and.  of  course,  for  the 
Apple  I'm  uetii  impressed  by  the  dedication  and  qualitii  that  ^our  company;  exhibits  by  virtue  of  this  demo  "  Dauid  Sosna  —  Associale  Producer,  Universal  Pictures 
Crystal  has  done  its  best  to  become  the  Porsche  of  the  computer  game  industry.  New  scrolling  techtiiques,  video  disk  games,  a  real-life  fanlasyland  —  our  mad  pro- 
grammers loll  onward  with  little  food  or  sleep  to  prodviic  .HJme  lncr«dible  fir^ls  in  the  microcomputer  world  If  you  are  an  unappreciated  genius  and  want  to  join  our 
staff  to  help  create  the  world  of  tomorrow  today,  givi;  me  a  call.  Our  magjzinu  Cr^/sial  Vison  wiil  within  the  next  month  have  a  circulation  of  80.000  and  we  look  for- 
ward very  soon  to  producing  our  first  lull  length  mo;  iqn.pif;lui;e  IVlfeloiliank  iny  friends  at  Votrax  and  Axlon  for  giving  us  the  tools  (128K  RAM 
text  synthesizer)  to  truly  produce  some  prograiii|nii*iJ|i<Ji^      "^^ 

THECRYPT  —  One  evening  you  awaki__^^^,,^ 
way  out  or  perish  from  the  hideous  assaults  d(n^fftA|n 
cend  Into  the  catacombs  beneath  the  cemetery;.  TShfe:  gai 
similar  In  some  respects  (wilhout  any  copying  intended 
common  sense  and  a  great  deal  of  courage  to  escape  ko 


will  receive  a  $200.00  prize.     $49.95  2  disks^^j^ 

QUEST  FOR  POWER  by  Mark  Benioff  ^         ,  _„^^,^       

search  of  the  Scroll  of  Truth.  Exp!r.re  the  ireachewJfilLTjtfisoHtieCawes-'nfiSdmBrscti 
and  great  prophets.  The  villages  of  Sunderland  and  Leeds  dot  your  patJi  Somewherfe 


kihe forests.  In  Fantasyland  tr.idllion  w^)»cl 
[Jlsk;  enjoyabl'j  to  all  ages  '  ^'' 


•    •    • 

be  artendlesscemetery.  Although  defenseless,  you  must  somehow firtd  your 

ipfreS.  wciev.'r)lve5,.^.r!d  other  repulsive  monstrosities  To  escape  you  may  have  to  des- 

ItotTj  the pihtrs  of  out  sL'nps  iicrause  we  use  a  lot  of  static  graphics  to  set  the  mood.  It  is 

ffWjLine  who  produce  excellent  static  graphic  adventures.  You  must  use  all  your 

IQB  We  have  made  il  ^o  nt^arli,-  impossible  that  the  first  player  to  do  it  successfu  lly 

j^^^snd.  Join  Galahad  as  he  leaves  Camelot  in 

jsex.  Along  the  way  you  will  meet  powerful  wijards 

[Skeiifir.'h,. lurks  the  devil  himself,  while  the  Evil  Giant 

some  sensational  graphic  and  anima- 


Gogmogo.  hungry  (or  human 
Hon  sequences.  Well  worth  t; 


The  year  Is  3021.  almost  lOGiL 
Brisbane.  It's  nearly  SO  years  since 
wonder  —  the  first  ion- propelled  vei 
and  those  of  Lemuria  have  now  been  dec! 
strange  new  worlds  await  the  ulli  mate  adv< 
marvelous  new  technology;  this  craft  must  be  fll 
heavens,  beset  by  meteor  showers  and  time-wi 
which  also  is  a  game  unto  Itself 

FrOrnESrtntOMOOII  —  Onihe  Moon's  dark  side  lie  entrances  to  caverns  extending  tolbenioori  s  bollow  ctSLijbi.^i^tirl^lns  a  timeless  secret  Here  live  a 
race  of  burrowing  creatures,  who  have  buill  vast  earthen  cities  with  storehouses  lull  of  prjdolRjiofe^  Grtnniy  is  extremely  tnlttSl  and  you  must  use  all  your  skills  to 
manually  land  your  craft.  This  first  Master  Disk  contains  the  dos  needed  to  run  addltijr-ivl  sjw^ioj.  It's  ptice  is  *39.95  and  includes  64  screens  of  Hires  graphics. 

MISrS  Of  VBnUS  —  On  Venus'  ever  hot  surface  ate  endless  jungles  and  suamD«.^^iqflJCntireaihfcle  and  spacesuiis  and  oxygen  must  be  carried  This  world 


^    lai 

greater  mjPf^^hs  ai 
:.  The  starf^hjp  rtfa 
nitoring  of  Ion  stabilizer" 
"'Id  holds  one  of  the  7  ki 


ts  quietly  in  the  Zikon  Museum  m  New 

and  at  the  unveiling  of  a  truly  technological 

Ids.  The  Martial^  glyphs  of  the  Meshim 

doors  — 7  guardians  and  7  candles  7 

veteran  adventurers,  faced  with  its 

;are  surrounded  by  the  flickering 

imes  all  run  off  the  Main  Module 


is  espf  cially  treacherous  with  all  sorts  of  loathsome  aeatures  and  iiardly  ani 
second  key  lo  solving  the  Mystery.     $29.95  (must  have  Master  Disk  to 

Pl3n6t  HGrniSn  —  it  is  hard  to  tell  where  Herman's  atmosphere i 
marine .  Navigating  around  Herman  is  very  dangerous  but  with  a  compute 

Master  to  run. 

The  ASterOICl  Belt  —  Every  play  something  olds.  A  comblnari&: 
advenuregame  Penai  colonies,  lurking  pirates,  and  some  unusual 
up.  Perhaps  you  should  find  some  expert  help  by  rescuing  a  pilot,  5 
trading  and  you  may  wish  to  indulge  yourself  with  a  visit  to  the  seiv 

Uranus  -  world  of  ice  -  a  freeing  place  with  nights  of  -I 
foot  tali  relative  of  Big  Foot,  fond  of  human  flesh.  Uranus  also  has  a  iea' 


ireathil 
dyojffii 


ship.  Beneath  the  grear)  seas  our  adventurer  may  find  the 


i  the  surface  begin^Wich  of  this  edv.etiture  will  have  the  feeling  of  a  slarship  sub- 
1  board  Ladv  Jo.inne  if  maybe  just  possible.  This  senario  costs  $29.95  and  needs  the 

pf  the  bifA  machine  lan9u2ysJ|W£|Afes  of  our  new  Cryslaloidj  with  a  fast  moving 

glife  exist  here .  It'laiMli^^Rvel  in  the  Asteroid  Belt  wii.^out  getting  blown 

ced  thief  or  murderer,  from  one  of  the  penal  colonies.  Thert  are  places  for 

$29.93  (needs  Master  Disk) 


!  F.  Brmg  along  Thermasuits,  as  wl'II  as  some  Laars  with  which  lo  batilp  the  Grungik,  a  12 

-  ?inne«Bbyrtnth  with  tropical  flora  .iiid  fauna.  However,  the  King  of  the  Ice  Planet,  Norion 

may  have  his  own  Idea  about  your  trespassing.  Without  proper  clothing:'  weapons  and  supplies,  iour  slay  here  may  be  very  exciting  and  very  short  $29.95  (needs 
Master  Disk  to  run) 

Jupiter  -  world  of  Dwarfs  -  how  would  » feel  to  w«igh  300  or  so  Ibs.?  a  tnp  to  Jupiter  should  fiU  you  in  fast.  There  Isa  particularly  interesting  red  spot 
on  Jupiter  and  a  eunous  set  of  moons.  Picking  up  some  antigrais  will  help.  Landing  should  really  tax  your  energies!  In  the  Jupilerian  atmosphere,  you  fall  fast!  Be 
prepared  to  use  10  times  the  normal  amount  of  fuel.  Better  find  the  6lh  key  quickly  before  your  fuel  and  food  are  exhausted .     $29.95  (needs  Master  Disk) 
The  Crystal  Planet  -  You  wHI  have  to  embw^Mi  linallpbrtio^  of  your  expedition  ignorant  of  what  you  may  encounter  here  on  this  mysterious  planet. 
exceptmg  ihal  the  7th  world  holds  the  ultimate  key  tp-tvtfJ^fh6c9Fl»sti-:l29.95  (needs  Master  Disk) 
The  contest  -  To  the  winner  with  the  higfiest  si^''>Hft^lWflhe  mystery  by  November  of  1982  will  go  $5000.00  in  cash  Good  Luck' 

T^     — *^  •••••• 

CLAMIS  CASTLE  —  According  to  ancient  legend  and  records  this  castle  is  one  of  the  most  haunted  sites  in  GieareURilvTJne  Lady  Glamis,  known  to  be  m 
league  with  the  devil,  liked  to  send  out  a  destrucUve  demon  lo  harrass  the  townspeople.  She  finally  was  burnt  at  the  stakeon  Castle'  Hill,  cursing  as  she  died  all  future 
generations  of  the  Lyon  family.  Her  demon  still  seems  lo  haunt  that  spot,  murdering  the  curious  who  stray  up  to  Castla  HUl  afki  dark.  The  curse  stipulated  that  each 
succeeding  generation  would  have  at  least  one  child,  often  female,  who  would  be  a  vampire.  When  an  heir  comes  of  age.  there  is  a  secret  ceremony  in  which  the  heir 
his  father,  and  the  steward  take  crowbars  and  chip  away  plaster  concealing  a  hidden  chamber,  known  only  to  theauthat  Earl  Patie  used  when  he  gambled  with  the 
devil.  Another  tradition  says  that  a  creature,  half-man,  half-beast  stalks  the  passages  in  the  walls  of  Glamis  lo  insurJBnPhlliJ^of  the  curse  The  mystery  of  course  is 
to  detertnme  the  location  of  this  secret  chamber  Our  game,  occupying  2  disks,  will  have  as  exact  a  replica  of  the'^iias^mble .  It's  definitely  one  of  a  kind'  And  we 
will  be  otfenng  a  5500  pnze  to  the  first  person  daring  enough  lo  solve  the  centuries-old  mystery  of  Glamis  Castle.  '  i49.9S  2  disks 


Crystal  has  many  other  tine  fantasy  and  space  games.  For  a  copy  of  CRYSTAL  VISION  which  Includes  a  complete  catalog  please  send 

$3.00  to  the  address  teioi..       Qur  Order  lines  are  open  24  hrs.  a  day  7  days  a  week. 

(408)  778-2966  CRYSTAL  COMPUTER  17120  Monterey  Rd..  Morgan  HHl,  CA  95037 


58 


COMPUTEI 


February.  1982.  Issue  21 


The  next  action  of  the  operating  system  (OS)  will 
be  to  determine  if  the  inputs  demand  the  scheduling 
of  any  tasks.  For  example,  let's  suppose  the  person 
using  the  system  entered  a  request  for  a  memory 
test  from  the  keyboard  by  pressing  an  "M."  The 
OS  would  recognize  this  as  a  MEM  TEST  request 
and  read,  from  a  lookup  table,  three  things  about 
the  task:  the  task  location,  its  execution  time,  and  a 
basic  priority  value. 

The  three  pieces  of  data  about  the  task  and 
the  time  of  its  request  would  then  be  entered  into  a 
queue  table.  This  queue  table  is  a  list  of  all  the  tasks 
that  are  scheduled  in  the  system  at  any  one  time. 
When  all  the  required  new  tasks  are  entered  into 
the  queue,  the  OS  then  assigns  a  calculated  priority 
to  each  task.  This  is  done  in  various  ways,  some 
extremely  complex;  however,  the  most  basic  way  is 
to  make  the  calculated  priority  a  function  of  both 
the  task's  basic  priority  and  its  elapsed  time  in  the 
queue.  This  simple  calculation  is  clone  in  our  emu- 
lator. After  a  new  calculated  priority  value  has 
been  entered  into  the  queue  for  each  pending  task, 
the  OS  then  looks  again  at  the  calculated  priorities 
and  merely  selects  the  most  urgent  task,  the  one 
with  the  highest  priority,  to  be  performed.  The  OS 
then  passes  control  to  that  task.  The  selected  task 
runs  on  the  micro  until  it  finishes  or  another  inter- 
rupt occurs  and,  in  either  case,  a  return  to  the  OS 
is  made  and  a  new  task  begun. 

An  OS  like  the  one  we  have  just  described  will 
respond  quickly  to  any  input  and  that  is  the  main 
design  goal  for  a  realtime  system. 

Notice  that  if  a  task  is  running  and  another 
task  is  calculated  to  have  a  greater  priority,  the  first 
task  can  be  suspended  while  the  more  urgent  task 
runs.  This  can  happen  if  one  task  has  been  waiting 
in  the  queue  for  some  time  while  another  executing 
task  has  most  of  the  processor  time.  Again,  this 
determination  of  task  suspension  can  be  extremely 
complex,  yet  in  our  emulator  it  is  made  solely  on 
the  basis  of  the  calculated  priorides  of  the  tasks.  It 
also  should  be  noted  that  because  of  memory  re- 
sources, scheduling  queues  are  limited  in  size. 
Because  of  this,  any  tasks  that  are  requested  when 
the  queue  is  full  are  ignored  and  must  be  requested 
again  later. 

To  be  actually  designed  in  a  system,  this  type 
of  OS  requires  careful  planning.  One  consideration 
is  the  frequency  of  occurrence  of  the  master  inter- 
rupt signal.  The  maximum  response  time  to  any 
input  would  be  one  cycle  of  the  interrupt  and  yet 
too  fast  an  interrupt  will  tend  to  bind  the  processor 
down  with  OS  tasks  instead  of  real  life  tasks.  An- 
other consideration  is  that  separate  stack  pointers 
should  be  kept  for  all  active,  scheduled,  or  sus- 
pended tasks  so  that,  at  any  dme,  resumption  of 
that  task's  execution  will  not  be  ruined  by  some 


other  task's  dealings.  The  use  of  a  RAM  buffer  for 
output  storage  allows  any  programmed  task  to  see 
what  is  in  an  output  port  and,  if  that  RAM  output 
buffer  location  is  changed  or  modified  during  next 
interrupt  cycle,  the  OS  will  automatically  write  that 
new  data  to  the  port.  This  is  a  good  way  of  syn- 
chronizing output  and  also  preventing  interference 
between  different  program  modules. 

Tins  emulator  program  is  a  model  of  the 
operating  system  required  by  the  hypothetical 
home  security  system  we  talked  of  earlier.  The 
emulator  is  written  in  BASIC  and  obviously  is  not 
as  fast  as  the  machine  code  OS  would  be.  However, 
the  basic  design  of  the  OS  is  graphically  shown  and 
is  simple  to  understand.  When  run,  the  cnuilator 
displays  the  active  task,  its  time  of  execution,  the 
average  time  of  response  to  those  tasks  in  the  queue, 
the  entire  scheduling  queue,  and  a  list  of  the  avail- 
able system  tasks  (See  Figure  1).  The  Auto  Resche- 
duling tasks  are  initially  placed  in  the  queue  and 
the  OS  begins  highlighting  the  active  task  as  it 
"executes."  At  any  time,  by  pressing  one  of  the 
available  task  numbers  (0-3  and  7),  a  new  task  will 
be  added  to  the  queue  and  serviced  as  the  OS 
permits.  The  queue  in  the  emulator  will  hold  only 
10  entries  and  then  a  "QUEUE  FULL"  response 
will  be  given  to  further  inputs.  Notice  that  the 
Auto  Rescheduling  tasks  are  added  again  to  the 
queue  as  they  are  completed.  Line  2335  oi  the 
program  is  the  algorithm  used  to  calculate  the 
priority  of  the  tasks  in  the  queue.  Experimentation 
with  different  prioritizing  schemes  will  produce 
some  very  interesting  results.  Try  your  own  algo- 
rithm and  compare  the  average  response  times. 

The  realtime,  multitasking  Operating  System 
Emulator  given  here  requires  less  than  4K  of  me- 
mory and  can  be  run  on  any  Commodore  system 
(most  other  systems  would  only  require  the  modifi- 
cation of  the  cursor  positioning  characters).  It  is  an 
excellent  tutorial  program  that  graphically  shows 
how  some  of  the  most  complex  OS  actually  do  what 
they  do.  Microcomputers  can  become  as  powerful 
as  minis  and  mainframes  with  this  kind  of  pro- 
gramming. I  luge  you  to  try  to  accomplish  this 
type  ot  OS  in  machine  code.  The  resulting  power 
of  the  microprocessor  would  be  amazing. 

Program  1. 

110  REM   MULTITASKER  EMULATOR 

111  REM   WRITTEN  BY  HAL  BREDBEMNER 
120  REM 

130  FORTN=0TO9 

140  READAR(TN) ,EXCTN) ,PR(TN) ,TN$(TN) 

150  NEXTTN 

160  DATA0,100,1,"E-STOP    "  ,  0  ,  100  , 1 ,  "~ 

-pVvfR  FAIL  ",0,90, 3, MOVE  FILE 
170  DATA0,5  0,8,"MEM  TEST  ",1,30,3,10  ~ 

"DRIVER, 1,30, 9, AC  PWR  CK 


February  1982.  Issue  21 


COMPUTEl 


59 


180  DATA1,30,9,DC  PWR  CK , 0 , 90 , 7 , PUNCH" 

~DATA,1,30,2,READ  KYBD 
190  DATAl, 30, 3, "REFRESH   " 
200  REM 

210  FORQN=0TO4 
220  READQT(QN) ,QT$(QN) ,QE(QN) ,QP(QN) ,~ 

~QA(QN) ,QW{QN) 
230  PT(QN) =INT( { QW (QN) /QP ( QN) ) *10  0) 
240  NEXTQN 
250  DATA9, "REFRESH   " , 30 , 2 , 1 ,0 ,8 , READ" 

~  KYBD, 30, 2, 1,0 
260  DATA6,DC  PWR  CK , 30 ,9 , 1 , 0 , 5 , AC  PWR" 

"  CK, 30, 9, 1,0 
270  DATA4,I0  DRIVER,30 , 2 , 1 ,0 
290  PRINT" {CLEAR} {REVImULTI-TASKING ■ 0" 

"PERATING  SYSTEM  EMULATOR" 
300  PRINT" {03  DOWN} {REV}SCHEDULER{ OFF" 

"} 
310  PRINT" {14  DOWN} {REV} AVAILABLE  TAS~ 

~KS. . .{DOWN} 
320  PRINT" 0-  E-STOP     1-PWR  FAIL 

~2-M0VE  PILE 
330  PRINT"  3-MEM  TEST    4-10  DRIVER*   *• 

~5-AC  PWR  CK* 
340  PRINT"6-DC  PWR  CK*  7-PUNCH  DATA   ~ 

"S-READ  KYBD* 
345  PRINT"9-REFRESH*     *-AUTQ  RESCHE~ 

"'DULING{02  UP} 
350  PRINT" {HOME} {05  DOWN} {REV}TASK  NA" 


~ME{OFF}  {REV}TIME  LEFT{0FF}  {REV}' 

~PRIORITY{OFF}  {REV}TIME  IN  QUEUE{' 

"OFF} 

1000  REM 

1010  REM  REAL  OPERATING  SYSTEM  AREA 

1020  REM 

1025  Q=0 

1030  GOSUB2800:REM  ADVANCE  ACTIVE  TAS' 

"K 
1040  GOSUB2500:GOSUB2700:REM  ADVANCE  ' 

"QUEUE 
1070  GOSUB2500:REM  GET  TASK  AND  ADD 
1080  IFQE(Q) <10THEN1300 
1085  ■GOSUB2400:REM  PACK  QUEUE  TABLE 
1090  GOSUB2500 :GOSUB2300:REM  DETERMIN" 

~E  HIGHEST 
1100  IFPT(XP) >PT(Q)THENQ=XP 
1110  GOSUB2500:GOSUB2000:GOTO10  30 

1300  REM 

1310  REM  DELETE  FINISHED  TASK 

1320  REM 

1322  CC=CC+1:TC=TC+QW(Q) : AC=INT(TC/CC" 

"'*100)/100 
1325  FT$=QT$CQ)+"  "+STR$ (AC) +"MSEC . " 
1330  QT$ (Q)="" 

1335  IFQA(Q)=1THENTN=QT(Q) :GOSUB2570 
1337  GOTO1085 

2000  REM 

2010  REM  DISPLAY  QUEUE 


IBM  COMPATIBLE  8"  FLOPPY 
DISK  for  CBM/PET;  Aim,  Sym 


C 


PI 


ilDISKII 


HIGH  SPEED  -  at  least  FOUR  times  faster  than  the  488  bus  disks. 

HIGH  CAPACITY  -  up  to  850K  bytes  of  storage  in  a  three  drive  system. 

RELIABILITY  -wide  timing  margins  insure  long  trouble-free  operation. 

SOFTWARE  -  the  PDOS  1 1  disk  software  provides  a  full  set  of  BASIC 
commands  with  standard  syntax. 
5%"  MINI  FLOPPY  DISK  SYSTEMS: 

Model  540-1  Single  Drive,  Double  Density  (143K)        $595.00 
Model  540-2  Dual  Drive,  Double  Density  (286K)  $895.00 

Model  580-1  Single  Drive,  Quad  Density  (286K>  $795.00 

Model  580-2  Dual  Drive,  Quad  Density  (572K)  SI  ,195.00 

8"  MINI  FLOPPY  DISK  SYSTEMS; 

Model  877-1  Single  Drive,  IBM  standard  (295K)         Si  ,095.00 
Model  877-2  Dual  Drive,  IBM  standard  {590 K)  $1,695.00 


] 


[full  FORTH  +) 


FULL  FEATURE  "FORTH"  FOR  6502  SYSTEMS 

Interpreter  -  Cross-Compiler  -  Cond.  Assembler  - 
Screen  Editor  -  String  Handling  -  Floating  Point 
SPECIFY  PEDISK  II,  PET  2040  or  4040  DISK,  OR  APPLE 


$75.00 


FOR  INFORMATION,  SEE  YOUR  DEALER  OR: 

fMICROTECH) 

DEALER  INQUIRIES  INVITED 


ADD-ON  DRIVES  FOR  TRS-80* 
Model  I,  5%",  40  Track  (102K) 
Model  I,  5%",  80  Track  (204K) 


$329.00 
$429.00 


P.O.  BOX  102  •  LANGHORNE,  PA  19047  •  (215)  757-0284 

*PET  IS  A  TRADEMARK  OF  COMMODORE 


60 


COMPUTEl 


Febfuofv  1982.  Issue  21 


2020 
2025 

2030 
2050 
2060 


2065 

2066 

2067 
2068 
2070 

2080 

2085 
2090 
2100 
2110 
2120 
2130 


REM 

GOSUB2100 

PRINT" {HOME} (05  DOWN} 

FORQN=0TO9 

IFQT$ (QN) =""THENPRINT" 

":GOTO' 
080 
PRINTTAB(10) " 

{UP}" 
PT(QN)=INT( (QW(QN)/QP(QN) )*100) 
IFQN=QTHENX$=" {REV} ":GOTO2070 
X$="{OFF}" 
PRINTX$QT$(QN) "{OFF}","  "QE(QN) ," 

"PT(QN},"    "QW(QN) 
NEXTQN 
PRINTQF$ 
RETURN 

REM 

REM  DISPLAY  ACTIVE  TASK 

REM 

PRINT" {HOME} {02  DOWN} {REV} ACTIVE' 
TASK: {OFF}  "QTS{Q)"  {REV}TIME  L" 
;FT:{0FF}  {09  LEFT}"QE(Q)- 


2135  PRINTTAB(10) "{REVIAVERAGE  RESPON" 
~SE:{0FF}        {07  LEFT} "AC 

2140  RETURN 

2200  REM 

2210  REM     DISPLAY  TIME 

2  220  REM 

2230  PRINT"{H0ME} {04  DOWN} "TAB ( 27 ) " {R" 
~EV}TIME:{0FF} "; 

224  0  PRINTLEFT$ (TI$,2)+": "+MID$ (TI$ , 3* 
■',2)+":"+RIGHT$(TI$,2) 

2250  RETURN 

2  300  REM 

2310  REM  DETERMINE  HIGHEST  Q  PRIORITY" 

2320  REM 

2330  X=0:FORQN=0TO9 

2333  IFQP{QN) =0THENGOTO2350 

2335  PT{QN)=INT{ (QW(QN) /QP (QN) )*100) 

2340  IFPT(QN) >XTHENX=PT(QN) :XP=QN 

2350  NEXTQN 

2360    REM    EXIT   WITH    XP=HIGHEST    PRIORIT" 

"Y 
2370  RETURN 

24  00  REM 

2410  REM   PACK  QUEUE  TABLE 

24  20  REM 

2430  FORQN=0TO9 

2440  IFQT$ (QN) =" "THENQT (QN) =0:QE(QN)  =' 

~0:QP(QN)=0:QA(QN)=0:PT(QN)=0:QW(Q- 

~N)  =0 
2450  NEXTQN 
2460  FORQN=0TO9 
2470  IFQT$ (QN) <>""THENNEXTQN:GOTO2490" 

248  0  QT$ (QN)=QT$ (QN+1) :QT(QN) =QT(QN+1" 
") :QE(QN)=QE(QN+1) :QP(QN) =QP(QN+1) ' 

2485  QA(QN}=QACQN+1) : QW (QN) =QW(QN+1) 

2486  QT$(QN+1)="" 


IS  NOW  PACKED 


AND  ADD  TO  QUEUE 


2487  NEXTQN 
2490  REM  TABLE 
2495  RETURN 

2500  REM 

2510  REM   GET  TASK 

2520  REM 

2525  QF$=" 

2530    GETX$:IFXS=""THENRETURN 

2535    IFX$="4"ORX$="5"ORX$="6"ORX$="8"- 

*'0RX$  =  "9"THENRETURN 
2540  REM  ADD  TASK  TO  QUEUE 
2550  IFVAL(X$) <0ORVAL(X$) >9THENRETURN' 

2560  TN=VAL(X$) 

2570  GOSUB2400:REM  PACK  QUEUE  TABLE 

2580  1=0 

2590  IFI>9THENQF$="{REV}QUEUE  FULL!{0" 

~FF}":GOTO2620 
2595  IFQT$ (I) <>""THENI=I+1:GOTO2590 
2600  QT(I) =TN:QT$ (I) =TN$ (TN) :QE(I) ^EX" 

- (TN) :QP(I)=PR(TN) : QA ( I ) =AR (TN) 
2610  QW(I)=0:PT(I)=INT{ (QW(I)/QP(I) ) *' 

"100) 
2620  GOSUB2000 

26  30  RETURN 

2700  REM 

2710  REM  INC  QUEUE  AND  PRIORITIES 

27  20  REM 

27  30  FORQN=0TO9 

2740  IFQT$(QN) =" "THENNEXTQN :GOTO27B0 

2750  0W(QN)=QW{QN)+1 

276  0  PT(QN)=INT(  (QW  (QN) /QP  (QN)  )  *10El) 

2770  NEXTQN 

2780  RETURN 

2800  REM 

2810  REM  ADVANCE  ACTIVE  TASK 

282^  REM 

2830  QE(Q)=QE(Q)-10 

28  50  PT(Q)=INT( {QW(Q)/QP(Q))*100) 
2860  RETURN 

READY , 


Figure  I. 

'£T«$i:j:^tfSl^[^  nO'v'E   FILE      lSlulaB«:4diei  60 

iy:i:J:TE)«:J3fS£»]!E:3*i  12.57 

I!!1IJ:J 


ir:i:j»;!r:]fii4 

ltlil:««:(all 

d;4(il:4«&'J 

ii<ai4itsi 

DC   PNR   CK 

3G 

344 

31 

RC  PI.;?::  CK 

:-:fH 

344 

31 

MEM  te:st 

f=iri 

£62 

£1 

uWi:fl;|j|^3| 

bki 

fcibb 

£0 

PUNCHDFlTR 

ysn 

£85 

20 

RERIi  KVED 

30 

458 

9 

REFRESH 

:"iFi 

£00 

t-. 

10   DRIVER 

30 

180 

3 

zViitwiiim^MSiVis 


0-    E-BTOP  1-PWR  PniL 

3-MEf1   TEST        4-10   DRIVER* 
6-DC  PWR   CK*   7-plJHCH   DfllH 


2-MOVE  FILE 
5-flC  PWR  CK* 
S-RERD  f(VEri* 


-REFRESH* 


*-RLlTn  RESCHEDULING 


NICROTOM  &  COMPANY 

Presents 

PET'  and  APPLE'  Software 


Education 

■  Vocabulary,  specificy  level 

S6.95 
56  95 

■  Subtraction  Quiz 

•  Division  Ouiz 

•  Multiplication  Quiz     

•  Amateur  Radio  Novice 
License  Quiz    

....    S6.95 

-.    .    56.95 

-    56.95 

SI?00 

Business 

•  Cash  Flow    

1 12  month.  6  month.  1  montf 

•  Real  Estate  Investment     .     . 

...    S12,00 
S4500 

Engineering 

•Multispan 5105.00 

Deflection,  Shear.  Momeni  for  con- 
tinuous muttlspan  structure. 

Other  programs  furnished  upon  request. 


NICROTOIM  &  Company 

P.O.  Box  738 

Atamo,  California  94507 

415-933-3697 


*VIC  20  USERS  I 

EXPANDOR  MODULE 

add  24K  with  Expander 

an  open-air  board 

S295.00 

Expander  plugs  directly  into  the  'VIC  20 

expansion  port  and  requires  NO  aiifditronal 

power  supply.  Expandor  is  a  cost  effective 

way  to  expand  the  3K  internal  memofy  of 

the  *VIC  20  up  by  24KI!I  Programming  of  the 

*VIC  20  has  become  more  practical  with  the 

introduction  of  Expandor. 

Ask  your  tocat  computer  dealer 

or 
send  check  or  money  order  to: 

QUANTUM  DATA,  INC. 

3001  Red  Hill  Ave. 

BIdg.  4,  Suite  105 

Costa  Mesa,  CA  92626 

(714)  754-1945 

•a  [rademaiv  of  COMM0IX3RE 
CA  rf sidenB  atJcJ  &%  saiffs  tax 


This  Publication 
is  available  in 
Microform. 


University  Microfilms 
International 

Please  send  additional  information 

for  


Name- 


Insiiiuiion_ 
Street 

City 

Stale 


300  North  Zeeb  Road 
Dept.  P.R. 
AnnArbor,  Mi.  48106 


Zip- 


JINSAM 
EXECUTIVE 


has  broken  the  10,000 

record  limit.  You  may 

now  have  up  to 

65,000 
records  In  one 
database. 
We  also  have  in- 
cluded a  free  form 
report  generator  for 
data  entry,  elimi- 
nating the  need  for 
WordPro™  and  have 
included  automatic 
mathematical  rela- 
tions eliminating  the 
need  for  VisiCalc™. 
However,  you  still 
have  these  superb 
interfaces  available. 

Includes  a  free  form 

report  generator  even 

for  data  entry. 

JInsam  is  officially 
approved  by 
Commodore. 

Executive™  will  soon 

be  available  f for  CBM 

and  IBM  personal 

computers]. 

See  our  ad 
elsewhere  In  thfs  Issue. 


JINI 

MICRO-SYSTEMS, 

INC. 

Box  274C  Kingsbndge  Siatron 

Riverdale.  New  yofk  10163 

(212)796-6200 


62 


COMPUTfl 


FebnjQry,  1962.  Issue  21 


Plotting  Polar 
Graphs  With 
The  Apple  II 

Marvin  L  De  Jong 

The  School  of  the  Ozorks 

Pt.  Lookout  MO  65726 


You  do  not  need  long  programs  to  make  a  computer 
perform  a  useful  task  in  teaching  mathematics. 
One  of  the  more  arduous  tasks  in  trigonometry  or 
analytic  geometry  is  graphing  functions  in  polar 
coordinates.  For  many  polar  curves,  this  task  takes 
a  lot  of  time,  and  not  much  learning  takes  place. 
On  the  other  hand,  it  is  an  ideal  task  for  the  com- 
puter, the  program  to  plot  a  polar  graph  is  easily 
understood  by  the  students,  and  it  gives  them  a 
tool  with  which  they  can  experiment  with  many 
graphs.  Program  1  shows  the  simplest  possible 
version.  We  shall  discuss  it  shortly,  but  first  here  is 
a  brief  explanation  of  what  we  are  trying  to 
accomplish. 

Suppose  we  have  a  relation  between  R,  the 
distance  from  a  point  called  the  pole,  and  6-  (Greek 
symbol  theta),  the  angle  measured  counterclockwise 
from  \.\\Q  polar  axis.  The  pole  is  analogous  to  the 
origin  in  X-Y  Cartesian  coordinates,  and  the  polar 
axis  lies  along  the  X~axis.  The  relation  between  R 
and  6- is  usually  described  by  an  equation  of  the  form 

R  =  F(9). 

The  equation 

R  =  90*SIN(2*S) 

is  one  example.  Refer  to  Figure  1  for  an  illustration 
of  some  of  these  concepts,  including  a  graph  of  the 
equation  R  =  90*SIN(2*9-),  called  3,  four-leaved  rose. 

The  key  to  using  a  computer  to  graph  polar 
coordinates  is  the  transformation  formulas 

X  =  R*cos(e) 

Y  =  R*SIN(&) 

and,  of  course,  the  computer's  ability  to  perform  a 
PLOT  X,Y  instrucdon. 

A  "bare  bones"  approach  to  plotting  polar 


graphs  is  given  in  Program  1.  The  student  inputs 
the  starting  angle  and  the  angle  at  which  the  graph 
is  to  end.  These  angles  are  in  degrees.  Line  30 
initializes  the  HIRES  mode  with  text  on  the  lower 
part  of  the  screen  of  the  video  monitor.  Line  60 
converts  the  angle  to  radians  (pi  radians  =  180°). 

Line  70  in  Program  1  is  tlie  ec]uali<)n  to  he 
graphed.  The  entire  program  may  be  left  un- 
changed while  line  70  is  modified  to  graph  a  large 
\ariclv  of  polar  functions. 

Line  90  and  100  convert  the  polar  coordinates 
(R,6^  to  X-Y  coordinates.  Note  that  since  the  origin 
of  the  Apple  II  coordinate  system  is  in  the  upper 
left-hand  corner  of  the  screen,  we  have  translated  it 
so  the  origin  of  our  coordinate  system  is  at  (85,85). 
Furthermore,  since  Y  is  positive  downward  on  the 
Apple,  and  we  would  prefer  the  more  traditional 
"Y  positive  upward"  convention,  we  use  a  negative 
sign  in  the  Y-transformation  equation.  The  results 
are  plotted  with  the  instruction  on  line  120.  The 
instruction  on  line  130  increments  the  angle  by  one 
degree.  Points  will  be  continued  to  be  plotted  until 

Figure  LA  Four- Leaved  Rose. 
R  =  90*SIN(2*THETA) 


VISICALC  MEMORY  EXPANSION  SYSTEM 

FOR  THE  APPLE  II 


Now  you  can  expand  the  memory  available  to 
Personal  Software's  16  sector  VISICALO"'  using 
the  SATURN  32K  RAM  BOARD 
and  VC-EXPAND™, 

With  VC-EXPAND™  and  one  or  more  SATURN 
32K  RAM  BOARDS,  the  memory  available  to 
VISICALC®  is  increased  from  18K  to: 

•  50K  with  1  SATURN  32K  BOARD 

•  66K  with  1  SATURN  32K  BOARD 
and  your  present  16K  RAM  card. 

•  Even  more  memory  available  with 
the  SATURN  128K  BOARD 

Software  is  included  to  relocate  DOS  onto  the  32K 
RAM  BOARD  and  to  allow  its  use  as  a  fast  disk 
drive.  Compatible  with  existing  software  in  place 
of  a  16K  RAM  card. 

Apple  II  is  a  registered  trademark  nf  Apple  Computer,  Inc. 
Visicnlc  is  n  registered  trademark  of  Personal  Software,  Inc. 
Copyright  IBHl  Alpha  Logic  Business  Systems,  Inc. 


COMPREHENSIVE  DOCUMENTATION 
1  YEAR  WARRANTY 

Total  Price  «33900 

Also  available  separately 

Saturn  32K  RAM  BOARD  $239 

VC-EXPAND™  $100 
Saturn  128K  RAM  BOARD  $699 


Dealer  inquiries  invited 
Visa  and  MasterCard  accepted 

ALPHA  LOGIC 
BUSINESS  SYSTEMS,  INC. 

3720  Winston  Drive 

Hoffman  Estates,  IL  60195 

(312)870-8230 


the  angle  exceeds  the  ending  angle.  The  student 
can  watch  the  points  being  plotted  and  see  the 
corresponding  R  and -6- values  printed  underneath 


the  graph. 

A  piiotograph  of  the  screen  of  the  video  moni- 
tor after  the  graph  R  =  85*SIN(19*THETA)  was 


Figure  2:  A  Nineteen-Leaved  Rose 


64 


COMPUTEl 


February,  1982.  Issue  21 


plotted  is  shown  in  Figure  2.  Notice  that  different 
X  and  Y  scale  factors  on  the  screen  produce  a 
sHght  distortion  that  is  not  important  as  far  as  the 
present  apphcation  is  concerned. 

Of  course,  it  is  always  possible  to  add  a  few 
bells  and  whistles.  Program  2  represents  a  few  non- 
essential, but  nice,  additions  to  the  first  program. 
The  coordinate  axes  are  drawn  and  the  X  and  Y 
values  are  rounded  to  their  nearest  integer  values 
before  plotting.  Also,  we  have  made  use  of  the 
entire  screen  with  the  HGR2  instruction  on  line  30. 
The  scale  of  the  graph  was  reduced  so  that  we 
could  plot  the  finished  result  on  oiu"  little  printer. 
If  you  are  using  a  video  monitor  or  a  large  printer, 
then  you  will  want  to  keep  the  scale  as  large  as 
possible  (replace  all  the  80's  with  90's). 

Some  of  our  results  are  given  in  the  figures 
that  follow.  In  Figure  3  we  show  a  graph  of 
R=  80*SIN{3*THETA)  a  three-leaved  roxe.  Figure  4 
is  a  graph  of  a  1 3 -leaved  rose,  R  =  80*SIN(13* 
THETA).  The  cardioid  R  =  40*(l  +COS(THETA)) 
is  illustrated  in  Figure  5.  Figure  6  is  the  famous 
Spiral  of  Archimedes,  R  =  6*THETA.  Figure  7  is 
similar,  but  not  identical  to  the  Limacon  of  Pascal. 
We  chose  R  =  80*COS(TH ETA/3)  for  this  figure. 
Figure  8  illustrates  the  Lilus  described  by  the 
equation  R  =  25*(2  +  SIN(3*THETA)).  Figure 
9  has  no  name,  but  its  equation  is  R  =  25*(2  + 
SIN(3*THETA)). 

Finding  where  two  polar  curves  intersect  is 
sometimes  difficult.  If  you  have  a  printer  you  can 

Figure  3.  A  Three-Leaved  Rose. 
R=  80*SIN(3*THETA) 


/'■ 


"■\ 


simply  graph  the  polar  curves,  overlay  their  graphs, 
and  find  approximate  points  of  intersection. 

Students  seem  to  enjoy  working  with  these 
programs.  They  are  simple  enough  so  tlie  students 
can  modify  the  various  parameters  rather  easily, 
giving  them  a  chance  to  experiment  freely.  At  the 


Figure  4.  A  Graph  of  R  =  80 
A  13-Leaved  Rose. 

R  =  80*SIN(13*THETA)    ; 
•    • 

■        * 

«          ■                              * 

*SIN(13*THETA), 

a 

•                   * 

.'■> 

■ 
■ 

•      • 

■              *                                     ■             i 

■                        «              « 

'   \          '         "    .         ,         -        •        ■ 

■       ■    •    >  « 

'  ■ »      »          ■ 

■                     ■ 

•  •  .;.\ 

■          ■                          *             ■ 

* 

•      m 

*      , 

Figure  5.  The  Cardioid  R  =  40*(l  +COS(THETA)). 
R  =  40*(1  +  COS(THETA)) 


-., ,/ 


...  ■■ ••, ,. 

.■•"''  '"■". 

/ 

\ ) 

■  • 

■•■■..       ..■■■■ 


very  least,  the  programs  release  them  from  the 
drudgery  of  plotting  points  by  hand. 

Figure  6.  Spiral  of  Archimedes  with  R  =  6*THETA. 
R  =  6*THETA 


m 
■  4 

• 

* 

m 
i 
t 
■ 

"■"X 

• 
■ 

y 

\ 

■ 

^* 

\ 

f 

\ 

t 

■ 

K 

f 

•l 

1 

f                             J^~* 

1 

J^^ 

^                          1 

f 

J                  ! 

:                    { 

t 

m                                               L 

JR 

L 

/ 

;                         \ 

/ 

:                       \ 

/ 

\ 

/ 

V 

y 

^^ 

■ 

V 

i 

• 
■ 

Figure  7.  A  Graph  of  R  =  80*COS(THETA/3). 
R=  80*COS(THETA/3) 


l/^'^ 


/V^ 


APPLESCOPE 

DIGITAL  STORAGE  OSCILLOSCOPE 
Interface  for  tfie  Apple  II  Computer 


Trio  APPLESCOPE  system  combines  Iwo  filgh  speed  analog  to 
digital  converters  and  a  digital  control  board  witti  the  higti  resolu- 
tion graphics  capabilities  of  the  Apple  u  computer  to  create  a 
digital  storage  oscilloscope.  Signal  trace  parameters  are  entered 
through  the  keyboard  lo  operational  software  provided  in  PROfJl 
on  ihe  Dl  control  board 

•  DC  lo  3.5  Mhz  sample  rale  with  1 024  byte  buller  memory 

•  Pretrigger  Viewing 

•  Programmable  Scale  Select 

•  Continuous  and  Single  Sweep  Ivlodes 

•  Single  or  Dual  Channel  Trace 

•  Greater  than  or  less  than  trigger  threshold  detection 
Price  (or  the  two  board  Applescope  system  is  $595 
EXTERNAL  TRIGGER  ADDAPTER  $29 

APPLESCOPE  EXPANSION  CAPABILITY 

APPLESCOPE  -  H  R1 2  High  resolution  1 2  bit  analog  todigital 
converler  with  sample  rales  to  1 00  Khz.  Software  included  on  disk. 

Price  per  channel  $695 

APPLESCOPE  -  HRHS  High  Resoluhon  AND  High  Speed. 
Combnes  two  6  bit  Hash  Analog  to  Digital  converters  to  give  1 0 
bit  converler  accuracy  at  a  maximum  7  Ivlhz,  sampling  rate. 
Software  included  on  disk.  Price  per  channel  $695 

SCOPE  DRIVER  Advancedsoftware for iheAppiescopesystem 
provided  on  5V4'  floppy  disk.  Available  options  include: 

•  Signal  Averaging  -  Acquires  1  lo  255  signal  sweeps  and 
displays  the  averaged  resull. 

•  Digital  Volt  Meier  -  Allows  use  as  a  real  time  DVIvl  or  use  lo 
measure  points  on  an  acquired  sweep. 

•  Hard  Copy  -  Uses  graphics  printer  to  produce  hardcopy 
output  of  displayed  traces. 

•  Disk  Storage  -  Allows  automatic  storage  and  recover  ol 
acquired  dala  on  (loppy  disks. 

•  Spectrum  Analyzer  -  Calculates  and  displays  frequency 
spectrum  of  acquired  data. 

The  basic  SCOPE  DRIVER  package  cost  is  S49  plus  $10 
lor  each  selected  option. 

BUS  RIDER 
LOGIC  ANALYZER  for  the  APPLE  II 

The  BUS  RIDER  circuit  card  Silently  rides  the  Apple  H  peripherial 
bus  and  allows  real  time  tracking  of  program  (low.  Software  pro- 
vided on  EPROfvl  allows  set  up  of  trace  parameters  from  the  key- 
board and  read  back  of  disassembled  code  after  a  program  has 
been  tracked. 

•  32  bit  by  1024  sample  memory  buffer 

•  filonitors  Data  and  Address  bus  plus  8  external  inputs 

•  Trigger  on  any  32  bit  word  or  external  trigger 

•  Pretrigger  viewing 

The  BUS  RIDER  is  an  invaluable  development  tool  for  anyone 
working  with  Apple  11  or  Apple  It-I-  computers.         Price  $295 

Apple  If  BUS  EXTENDERS  Si  9.95 

Allow  easy  access  to  Apple  it  periphenai  circuit  cards 

SCOPE  PROBES  too  rvlhz.  Bandwidth  XI  &  XlO  switch 
selectable  oscillosco.oe  probes.  Price  each  $49.95 


For  further  inlormaiion  contact: 

VISA        Ivlaster  Charge 
Dealer  Inquiries  Invited 


RC  ELECTRONICS  INC, 

7265  Tuolumne  Street 
Goleta.  CA  93117 
(8051  968-6614 


66 


COMPUTEI 


Febfuarv,  1982.  Issue  21 


Figure  8.  A  Graph  of  R  =  SQR(3600/THETA). 
R  =  SQR(3600/THETA) 


Figure  9, 

Untitled  Graph  with  R  =  25*(2  +  SIN(3*THETA)). 

R  =  25*(2  +  SIN(3*THETA)) 


r""\ 

/' N 

\ 

'"1 

r" 

I 
\ 

1 

COMPUTE!  The  Resource, 


Program  1.  A  Simple  Program  to  Graph  Polar  Functions 


10 

INPUT 

flP 

,  AB 

20 

RNG    =    OPI 

30 

HGR 

60 

THETA    = 

-       "7 

.  141532S    > 

^•-    RNG    / 

180 

70 

R    =    85 

* 

SIN 

1:2    + 

THETPl) 

80 

PRINT 

R, 

flNG 

90 

X    =    S5 

+ 

R    * 

COS 

THETfl) 

102 

)    Y    =    85    - 

R     t: 

SIN 

(THETfl) 

120   HPLQT  X,Y 

130  RNG  =  flNG  +  1 

140   IF  flNG  <   =  flB  THEN  E0 

150   END 


Program  2.  An  Elaboration  of  Program  1. 

^LIST 


10       INPUT   flfl. 

RB 

20    flNG   =    flft 

30      HGR2 

40      HPLOT    1,80    TD    1E0,  80 

50      HPLOT   SB, 

1    TD    S0, 160 

60    THETft    =   .3. 

1415925    +    flNG    /    180 

70    R    =   80    »t= 

SIN 

(.Z    *    THETfl) 

80    X    =   80    +    R   * 

COS    (THETfl) 

90    X    =       INT    ( 

X    + 

.5) 

100   Y   =    80    - 

R      t: 

SIN    C THETft) 

110    Y   =       INT 

CY 

+    .5) 

120       HPLOT    X, 

Y 

130    flMG    =    flNC 

)    + 

1 

140       IF    flNG     < 

= 

flB    THEN    60 

150       END 

© 

— 

MEMOREX 

FLSXIBLE  DISCS 

WE  WILL  NOT    BE    UNDER- 

SOLDO  Call  Free  (800)235-4137 

^.-^ 

for  prices  and  information.  Dealer 

^ 

inquiries     invited     and     COD.'s 
accepted 

^ 

i 

PACinc 

EXCHANGES 

Lfji*  Y 

100  Foolhill  Blvd 

1 

San  Luis  Obispo.  CA 

93401    In  Cal.  call 

d^^ 

\ 

1800)592-5935  or                    ™^ 
1805)543-1037                       ■■■ 

1[     SPEECH  SYNTH^OER 
UNUMITED  VOCABULARY  AT  YOUR  HNGERTIPS 


Give  your  Apple*  something  to  talk  about  with  an 
ECHO  ][  Speech  Synthesizer.  The  ECHO  ][  offers  In- 
telligible voice-output  v/hile  using  a  minimum  of  RAM. 
The  ECHO  ]I  uses  LPC  technology  pioneered  by  Texas 
Instruments,  coupled  with  a  phoneme-based  operating 
system  allowing  you  to  create  any  vocabulary  desired. 
Variable  stress,  pitch  and  volume  let  your  Apple  ask 
questions  or  make  exclamations  while  also  alfowlng 
for  optimal  quality.  Speech  can  easily  be  added  to 
BASIC  programs  with  PRINT  statements. 

The  applications  of  synthesized  speech  are  limited 
only  by  your  Imagination.  From  educational  programs 
to  games  to  business  applications,  speech-output 
adds  a  new  dimension  to  your  Apple's  capabilities. 

The  ECHO  H  Speech  Synthesizer  comes  complete  with 
speaker  and  cable,  instruction  manual,  speech  editing 
features  and  a  sample  vocabulary.  The  ECHO  ][ 
requires  48K,  Applesoft  and  at  least  one  disk  drive. 
Suggested  list  price  is  $225. 

For  further  Information,  contact  your  dealer  or  Street 
Electronics  Corporation. 

Dealer  inquiries  welcome. 

*  Tlwdamifh  of  Appit  Computer  Compiny 


y 


STREET  ELECTRONICS 
CORPORATION 


31 52  E.  La  Paltna  Ave.,  Suite  D 
Anaheim,  CA  92806 


(714)632-9950 


COMPUTER    CLASS 


M.      HUMPHREY 


When  I  was  their  age,  machine  language 
meant "  tick-tock,  tick- took! 


6B 


COMPUTEI 


Februarv,1982.  Issue  21 


Disassembling 

iVIacliine 

Language 

Programs 

Without  Leaving 

BASIC 

John  R.  Vokey  and  H.  Cem  Kaner 
McMaster  University 
Hamilton,  Canada 


One  of  the  nice  features  of  the  Apple  computer  is 
that  it  has  a  built  in  mini-assembler  and  disas- 
sembler. The  mini-assembler  is  all  you  need  for 
entry  of  short  machine  language  programs.  In 
fact,  for  short  programs,  this  free  piece  of  software 
has  proven  more  flexible  and  less  error  prone  than 
two  of  the  "full  blown"  assemblers  we  have  pur- 
chased. The  disassembler  is  useful  for  programs  of 
any  length.  If  you  have  a  machine  language  pro- 
gram in  memory,  the  disassembler  will  translate 
the  program's  code  from  meaningless  hexadecimal 
numbers  into  an  assembly  language  listing.  The 
listing  includes  no  labels,  just  instructions  and 
addresses,  but  this  is  still  quite  informative.  It  is  not 
too  hard,  for  example,  to  decode  fairly  large 
sections  of  the  code  underlying  Applesoft  from 
such  listings. 

The  standard  approach  to  using  the  mini- 
assembler and  disassembler  is  to  jump  into  the 
monitor  {via  CALL  -151  from  either  BASIC)  and 
to  work  from  there.  These  steps  are  well  described 
in  your  Apple  11  Reference  Manual.  However,  it  is 
also  possible  to  access  some  of  these  monitor  com- 
mands from  BASIC.  The  one  line  Applesoft  pro- 
gram below  allows  you  to  disassemble  machine 
code  anywhere  in  memory  without  ever  leaving 
BASIC.  This  is  especially  convenient  if  you  are 
trying  to  debug  a  machine  language  subroutine 
which  will  be  CALLed  from  BASIC.  You  can 
change  the  routine  using  POKEs,  examine  the 
changes  using  this  line  in  your  CALLing  program, 
and  test  the  changed  version's  behavior,  all  without 
leaving  Applesoft. 


The  program  works  by  passing  the  user-speci- 
fied START  location  of  the  code  to  be  disassembled 
to  the  monitor  program  counter  (labelled  PC  in  the 
program).  It  then  calls  the  monitor  LIST  subroutine 
which  we  label  disassemble  in  the  program.  This 
routine  disassembles  the  next  20  lines  of  machine 
code,  incrementing  the  monitor  program  counter 
locations  appropriately,  and  returns  control  to 
BASIC.  The  BASIC  program  then  compares  the 
value  of  the  monitor  program  counter  to  the  user 
specified  value  FINISH.  If  there  is  more  to  be  done 
before  location  FINISH  is  reached,  the  program 
waits  until  you  press  any  key,  then  continues  the 
listing.  Once  FINISH  is  reached,  the  program  ends. 

As  an  example  of  the  use  of  the  program,  if 
you  set  START  to  651 18  and  set  FINISH  to  65 140, 
you  will  disassemble  the  disassembler. 

1000  DISASSEMBLE  =  65121:  PC  =  58: 
POKE  PC,  START  -  INT  (START  /  256) 

I 


256: 
=  0 
PRINT: 
KEY>" ; 
*  256 


POKE  PC  +  1, START  /  256:  FOR 
TO  1:  HOME:  CALL  DISASSEMBLE: 
PRINT  TAB  (13) ;"<PRESS  ANY 
GET  Z$:  I  =  (  PEEK  (PC  +  1) 
+  PEEK  (PC) )  >  FINISH:  NEXT  I 


C^ommon 
Cents 


FORECASTER 


Vlith  your  coaputer,   you  can   forecast  the  stock  market  like  the  NaW 
Street    erperts.      FORTGASTEIR.    a  mutual  and  Bioney  narket    fund   tracker, 

I  D&nltora  the  stock  isarket  and  helps  you  nake   timely  declslQna  to 
achieve  a  high  and   aafa  growth  of  your  Investnent  dollars.     Our 
progran   tracKSi    astlaates  and  predicts    future  movenents  in    th&  stock 

I  TBflrket   and    Selected  nutual    funds  hased  on  an   extensive    data  baae. 

•  avoid  confusion 

•  achieve  high  yields 

•  phesehvh;  capital 

•  lo.v  risk 

•  top   INTSHEST    RATt:3 

•  takes  l^ss  ikan  jhour  per  week 

FQH ^Cf^lSR  is  written  In  ainple,   clear  laapiage,     ??o  advanced 
knowledge  of  KLatheoaticB,   computer  programtnlns,   or  investing 
eTperience  la   required.      S&nd   SlO.OO*    for  prograramlng  report  and 
user'E^  aanualj   or  S75.00*    for  complete  eoftware  package.     Please 
apeclfy  Apple  114-    (Applesoft),    CP/W   Basic  90,    or  TRS   80  Level  II. 
(Appl<-  IX+  and  ApplBBoft  are  trodenarks  of  Apple  Computers^   CP/M 
ifl  a  trademark  of   Digital   Reaearchj    Basic  60  Is  a   tradeiBark   of 
Mlcpoi^oft,    and  TRS  flO  la  a  trademark  of  Tandy  Corp, 
•   Add   S2»00   for  pastage   and  handling 
IIbW  Mexico    residents   also   add   ^5£   tax 


META  SOFTWARE  ENGINEERING 

P.  O   Box  1  8056 

Albuquerque.  NNl   87115 
D  I 


Februory,  «82.  Issue  21 


COMPUTH 


69 


Named  GOSUB 
With  Variable 
Passing 

Mike  Smith 
Calgary,  Canada 

In  COMPUTE!  #12,1  described  a  machine  language 
program  which  would  allow  subroutines  to  be 
called  by  name  rather  than  by  number.  This  article 
is  an  extension  of  that  idea.  It  describes  a  machine 
language  program  which  allows  parameters  to  be 
passed  in  and  out  of  subroutines. 

One  of  the  nicer  features  of  FORTRAN  and 
PASCAL  is  their  ability  to  pass  variables  into  a 
subroutine.  This  feature  is  very  useful  when  you 
wish  to  do  the  same  operation  on  a  large  number 
of  variables.  Passing  parameters  into  subroutines  is 
convenient  since  the  variable  names  used  outside 
the  subroutine  don't  have  to  be  the  same  as  used 
for  the  calculation  within  the  subroutine.  This 
makes  programming  and  documentation  easier.  In 
addition,  subroutines  of  this  type  can  be  used  as  a 
sort  of  multi-line  function. 

A  Brief  Example  Of  Parameter  Passing 

Suppose  that  you  wish  to  perform  a  complicated 
operation  upon  variables  A,  B  and  C  and  have  the 
answer  returned  in  D.  Then  you  wish  to  have  the 
same  operation  performed  upon  the  variables  Al, 
Bl  and  CI  and  have  that  answer  returned  in  Dl. 
In  FORTRAN  that  program  would  look  like 
this: 

CALL  COMPL(A,B,C,D) 

(call  subroutine  with  first  variable  set) 
CALL  COMPL(Al,Bl,Cl,Dl) 

(then  with  the  second  set) 

(Use  D  and  Dl  in  calculations) 

SUBROUTINE  COMPL(W,X,Y,Z) 

(use  dummy  variables  with  subroutine) 
(Complicated  calculation  using  W,  X  and  Y) 

Z  =  

RETURN 

In  Applesoft  BASIC  things  are  a  little  more 
difficult.  First,  you  must  call  the  subroutine  by  a 
number  rather  than  by  a  name.  A  second  problem  is 
that  you  can't  pass  the  names  of  variables  into  the 
subroutine.  Instead,  you  must  move  (reassign)  the 
values  into  the  variable  names  used  in  the  subrou- 
tine. An  equivalent  Applesoft  BASIC  program 


would  look  something  like: 

10    W  =  A:X  =  B:Y  =  C 

(reassign  first  set  of  variables) 
20  GOSUB  1000 
30D  =  Z 
40  W  =  A1  :X  =  B1  :  Y  =  C1 

(reassign  second  set)  '    • 

50  GOSUB  1000 
60D1=2 

70 

(Use  D  and  Dl  in  calculations) 

1000  (Complicated  calculation  using  W,  X  and  Y) 

1100  2= , 

1110  RETURN 

Having  to  remember  the  subroutine  number 
is  no  great  problem  if  you  are  the  person  who  did 
the  programming,  provided  you  only  did  the  pro- 
gramming a  week  or  so  ago,  and  have  not  yet  for- 
gotten what  subroutine  number  was  needed  for 
what.  Having  to  reassign  variables,  as  in  statement 
40,  is  no  great  problem  either,  provided  you  don't 
have  a  large  number  of  different  variables  that 
need  to  be  worked  on.  But  why  do  something  that 
the  computer  can  make  easier  to  understand  and 
do? 

The  program  described  in  this  article  uses  the 
Applesoft  BASIC  ampersand  command  (&)  to  allow 
the  naming  of  subroutines  and  the  easy  passing  of 
numerical  data.  With  the  machine  code  routine 
installed  in  memory,  the  Applesoft  program  above 
becomes: 

10  COMPL  =  1000 

(establish  the  subroutines  name) 
20  &  GOSUB  COMPL  !COMPL(0),A,B,C,D! 

(pass  the  parameters) 
30  &  GOSUB  COMPL  !COMPL(0),A1,B1,C1,D1! 
40  

(Use  D  and  D 1  in  calculations) 

1000  &  GET  !COMPL(0),W,X,Y,Z! 
(identify  the  dummy  variables) 
1010  (Complicated  calculation  using  W,  X  and  Y) 

1100  Z  =  .... 

1110  &  RETURN  ICOMPL(O)! 

In  addition  to  passing  parameters,  Applesoft 
will  now  support  GOTO  and  GOSUB  statements 
that  have  names  instead  of  numbers.  For  example 

JUMP  =  1000  :  &  GOTO  JUMP  or  COMPL  =  1000  : 
&  GOSUB  COMPL 
FIRST  =  1000  :  DEUX  =  2000  :  ON  X  GOSUB  FIRST, 
DEUX 

I  decided  to  develop  this  parameter  passing 
routine  because  I  am  repeatedly  asked  to  translate 
FORTRAN  program  with  subroutines  into  Apple- 
soft. Most  of  those  subroutines  pass  variables. 
Making  sure  that  I  didn't  duplicate  names  and  that 


70 


COMPUTEI 


FebruQiy.  TO82  Issue  21 


I  reassigned  the  right  variable,  was  too  much  of  a 
hassle.  Hence  this  routine. 

Loading  The  Program 

The  machine  language  program  as  described  in 
this  article  is  too  long  to  put  in  a  normally  unused 
area  of  memory.  The  cassette  buffer  (at  $300)  will 
only  accept  around  $CF  locations  before  running 
into  the  DOS  pointers  at  $3D0. 

The  program  could  be  placed  high  in  memory, 
just  below  the  normal  HIMEM.  The  HIMEM 
pointers  must  then  be  adjusted  so  that  the  program 
is  not  touched  by  Applesoft  when  strings  are  used. 
However,  this  means  that  people  using  48K  and 
32K  Apples,  with  or  without  the  Program  Line 
Editor  at  the  top  of  memory,  will  all  need  different 
programs.  The  modifications  are  simple,  if  you 
know  how.  Therefore,  I  have  adopted  the  technique 
of  moving  LOMEM  up  $200  bytes  and  storing  the 
machine  language  code  in  the  space  created.  Then 
everybody  gets  the  same  code. 

Before  entering  the  demonstration  BASIC 
program,  type: 

POKE  104,10  :  POKE  2560,0  :  NEW 

These  three  instructions  adjust  LOMEM  and 
the  various  Applesoft  RUN,  LOAD  or  SAVE  pro- 
grams. The  pointers  can  be  shifted  down  to  their 
normal  place  by  typing  FP. 

After  the  BASIC  program  has  been  run,  the 
machine  code  can  be  saved  by  the  command  BSAVE 
VARIABLE.PASS,  A$803,L$18I.  The  program 
will  stay  active,  below  your  BASIC  program,  until 
you  power  down  or  do  an  FP. 

To  reload  the  ML  program  the  next  time 
you  power  up,  type  BRUN  VARIABLE.PASS 
either  from  the  keyboard  or  as  part  of  your 
HELLO  program.  The  LAST  line  of  the  HELLO 
program  should  be  PRINT  CHR$(4);"BRUN 
VARIABLE.PASS". 

The  first  couple  of  statements  of  the  hex  code 
are  the  machine  language  equivalent  of  POKE 
104,10  :  POKE  2560,0  :  NEW,  That  means  that 
you  only  have  to  adjust  the  memory  the  first  time 
you  enter  in  the  code.  If  you  forget  to  adjust  the 
memory  before  running  the  demonstration  BASIC 
program,  yoii  will  receive  the  message  SYNTAX 
ERROR  in  34057.  a  non-existent  line.  Simply  type 
NEW  :  POKE  1 04, 1 0  :  POKE  2560,0  :  NEW,  reload 
the  program  from  disk  and  RUN  again.  If  you 
didn't  adjust  LOMEM,  then,  when  the  BASIC 
program  stored  the  machine  language  program,  it 
did  so  all  over  itself,  causing  a  gigantic  mess. 

There  is  a  sneaky  reason  for  starting  the  ma- 
chine language  program  at  |803  (205 1)  rather 
than  at  S800,  the  start  of  the  empty  memory  area. 
Suppose  that,  for  some  reason  or  another,  you 
need  to  enter  FP  to  recover  from  your  program 


doing  something  strange.  Typing  FP  causes  O's  to 
be  written  at  locations  $800-$802  to  indicate  that 
there  is  no  longer  a  program  in  the  memory.  This 
misses  the  ML  program  since  it  starts  at  $803. 
Thus,  a  quick  CALL  2051  and  ABRACADABRA, 
the  pointers  shift  and  the  program  is  back  in  busi- 
ness. 

The  details  of  the  demonstration  and  machine 
language  programs  are  given  after  the  description 
of  the  new  SYNTAX  of  the  instructions  and  limita- 
tions of  the  new  commands. 

Syntax  For  The  New  Commands 

&  GOSUB  NAME  !NAME(0),A,B, ! 

The  name  of  the  subroutine  must  be  predefined 
before  the  subroutine  is  called  (e.g.  NAME=  1000). 

The  first  parameter  after  the  exclamation 
mark  must  be  an  array;  otherwise,  a  BAD  SUB- 
SCRIPT  ERROR  occurs.  It  is  suggested  that  the 
name  oi  this  array  be  the  same  as  the  name  of  the 
subroutine;  for  ease  of  remembering  rather  than 
necessi:y.  If  more  than  ten  parameters  are  to  be 
passed  by  the  routine,  the  array  must  be  DIMen- 
sioned  to  the  number  of  parameters.  No  check  is 
performed  to  see  if  the  array  is  large  enough  for 
all  the  ]>arameters  used. 

The  other  parameters  must  be  numerical, 
either  real  variables  (A,  B  etc.)  or  elements  of  a  real 
array  (  A(l),  B(l)  etc.).  The  arrays  don't  have  to  be 
predimensioned  unless  their  length  is  greater  than 
ten.  Errors  will  occur  on  attempting  to  pass  a  .string 
(TYPE  MISMATCH)  or  an  integer  (SYNTAX).  It 
should  be  noted  that  it  is  the  I'alue  of  the  array 
element  that  is  m{)ved  and  not  the  array  itself.  This 
means  that  you  can't  pass  over  the  whole  array  by 
passing  over  the  first  element  of  an  array,  (c.f.  In 
FORTRAN,  it  is  the  address  which  is  passed  and 
not  the  value  of  the  array  element.  So,  the  whole 
array  can  be  accessed  from  I-ORTRAN  subroutine 
if  you  know  the  first  address.  In  Applesoft,  memory 
is  continually  being  repositioned.  The  address  of 
any  variable  is  therefore  continually  changing, 
making  any  address  stored  very  quickly  invalid.) 

Tlie  parameters  do  not  need  to  iiave  been 
defined  before  calling  the  subroutine.  The  machine 
language  program  makes  use  of  Applesoft  romines 
which  automatically  allocate  space  in  the  memory 
for  new  arrays  and  variables. 

&  GET  INAME(0),P,Q, ! 

This  shotild  be  the  first  statement  of  the  sub- 
routine. The  subrotitine  can't  be  recuisive  (it  cant 
call  itselO. 

This  command  does  not  extend  an  existing 
Applesoft  command  as  did  the  Sc  COSUB,  &c  RE- 
TURN and  &  GOTO  commands.  Therefore  I  had 
to  use  a  different  command.  I  decided  to  use  CET, 
Since  to  me,  this  new  command  goes  and  gets  the 


parameter  values.  If  you  would  prefer  a  different 
command,  such  as  LOAD,  then  the  modification  to 
allow  this  is  simple.  To  have  a  different  command, 
POKE  its  token  into  location  2600  ($828)  before 
BSAVEing  the  program.  For  example,  POKE  2600 
,167  will  change  this  command  to  be  &  RECALL 

! !  rather  than  &  GET  ! !,  (Seepage  121  of 

the  Applesoft  Manual  for  a  list  of  the  tokens). 

The  first  parameter  after  the  exclamation 
mark  must  be  the  same  array  used  in  the  &  GOSUB 
statement,  otherwise  unexpected  values  will  be 'put 
into  the  parameters  (P  etc). 

The  other  parameters  must  be  real,  otherwise 
a  TYPE  MISMATCH  or  SYNTAX  ERROR  will 
result.  Either  real  variables  (P)  or  elements  of  real 
arrays  (P(l))  may  be  used.  Again,  the  parameters 
don't  have  to  be  predefined  before  the  subroutine 
call,  unless  they  are  arrays  of  length  greater  than 
ten.  If  the  arrays  need  to  be  DIMensioned  re- 
member to  do  it  outside  the  subroutine.  Otherwise  a 
REDIMENSIONED  ARRAY  ERROR  will  result 
on  the  second  subroutine  call. 

The  number  of  parameters  in  the  &  GET 
statement  should  be  the  same  as  the  number  of 
parameters  in  the  &:  GOSUB  statement.  If  this 
condition  is  not  met,  strange  values  could  arrive  in 
the  parameters  of  the  &  GET  statement. 

&  RETURN  !NAME(0)! 

The  array  used  in  the  &  RETURN  statement 
should  be  the  same  array  as  used  in  the  &r  GOSUB 
and  &:  GET  statements.  As  this  array  is  used  to 
temporarily  store  text  pointers  to  the  &:  GOSUB 
and  &  GET  statements,  strange  results  could  result 
if  the  wrong  array  is  used.  However,  it  is  probable 
that,  instead  of  funny  results,  a  SYNTAX  ERROR 
will  occur.  The  likelihood  of  the  wrong  array  point- 
ing to  valid  names  in  separate  locations  in  memory 
is  very  small. 

If  the  number  of  parameters  in  the  &  GET 
statement  is  not  the  same  as  the  number  of  pa- 
rameters in  the  &  GOSUB  statement,  unpredictable 
values  will  be  put  into  the  parameters. 

&  GOTO  NAME  and  &  GOSUB  NAME 

The  name  of  the  subroutine  must  be  estab- 
lished before  it  is  called.  If  these  commands  are 
used,  a  normal  RETURN  is  all  that  is  needed.  If  & 
GET  and  &  RETURN  are  used,  a  SYNTAX 
ERROR  will  occur. 

&  ON  X  GOSUB  FNAME,  SNAME  and  &  ON  X 
GOTO  FNAME,  SNAME 

These  ON  X....  commands  are  supported, 
provided  that  no  parameters  are  passed.  That  means 
that  &  ON  X  GOSUB  FNAME,  SNAME  i.s  permitted 
but  &  ON  X  GOSUB  FNAME  !FNAME(0).A,B,C,D!. 
SNAME  !SNAME(0),A,B,C,D!  is  not.  I  felt  that 
passing  parameters  in  ON  X...  statements  made 


The  "Everything"  I/O  Board 
for  the  Apple  n&n+ 


OMNI  is  a  multi-function  input/output  board  for  the  Apple  II  or 
in-  computer.  It  provides,  on  a  single  Doard,  most  of  the  "missing" 
flsatures  needed  to  make  ttie  Apple  a  complete  computer.  \X/itti 
OMNI  your  Apple  can  have:        .  p^^^,,^,  .^^  ^^^  handshaking 

•  RS232  Level  serieil  I/O  (software 
driven) 

•  24  Hr.  Real  Time  Clock  with  Alarm 

•  2K  EPfiOM  with  graphics,  I/O 
driver,  and  screen  editor  firmware 

•  256  Byte  PROM  supervisofy 
firmware 

•  Six  2K  PROM/EPROIW  expansion 
sockets  software  selectable  (one 
socket  used  fbr  Eclectic  firmware, 
5  available  for  user] 

INPUT: 

•  Generate  full  ASCII  character  set 
from  keytxjard 

■  Optional  shift  key  deteaion 

•  User-definable  "soft"  ke^s  with 
screen  legends 

•  Integrated  text  line  editor  full 
cursor  movement,  insertion/ 
deletion  modes 

•  Key  legerxJ  stickers  included 

•  Derrronstratron  Diskette  with  pro- 
gramming examples  and  a  Soft 
Charaaer  Editor 

OUTPLTTl 

•  Full  96  character  ASCII  display 

•  Concurrent  64  user-definable 
"soft"  ciiaraaers 

•  Optional  character  overstrike  and 
EOR  on  tiackground 

•  Optional'double-width  color 
charaaers 

•  Cfiaraaer  rotation  in  90°  steps 

Neuer  before  tia*  so  man/  functions  been  aailable  on  a  single  toard. 

OMNI  was  designed  with  one  major  goal  in  mind,  flexibility.  The 
OMNI  system  consists  of  some  extremely  simple  but  very  sophisticated 
tiardware,  a  large  amount  of  powerful  firmware  (programs 
permanently  residing  in  Read  Only  Memory  chips),  and  an  equally 
extensive  amount  of  software  (programs  residing  on  diskette  tfiat 
are  loaded  into  RAM  as  needed).  In  addition,  OMNI  comes  with 
extensive  documentation. 


To  order  TOLL  FREE:  1-800-  527-3135 

or  Order  by  Mall  Below 

Eclectic  Systems  Corporation,  P.O.  Box  1 166,  Addison,  TX  75001 

Here's  m/  order  for  OMNI  at  S268  plus  S3  for  shipping  xvi  fiandling 
(UPS  surface,  unless  specified),  S5  overseas. 


D  My  Check  is  enclosed. 
D  Please  charge  my  VISA. 
Account  # 


Mastercard . 

Expires 


Name. 


Address . 


City/State. 

Signature  _ 


.Zip. 


72 


COMPUTEI 


Februacy.  1982.  Issue  21 


the  statements  very  unwieldy.  The  original  idea 
behind  introducing  these  new  commands  was  to 
make  the  programs  more  readable  rather  than 
less.  Multiline  IF. ..THEN  commands  would  do  the 
same  job,  in  a  more  readable  fashion.  For  those 
people  interested  in  implementing  the  unweildy 
ON...  version,  I  have  included  the  additional  code 
needed  (lines  176-189). 

Warning 

Warning  on  renumbering  and  crimching  pro- 
grams: Renumbering  programs  will  not  change  the 
values  of  variables.  Therefore,  they  will  not  change 
the  pointers  to  the  subroutines  called  by  these  new 
commands.  This  must  be  done  by  hand  after  the 
renumbering  is  complete.  Utilities  that  crunch 
programs  will  not  recognize  the  fact  that  the  sub- 
routines are  being  called  and  therefore  will  remove 
them  as  dead  code.  To  overcome  this  removal 
problem,  a  dummy  line  that  calls  all  subroutines, 
must  be  added  to  the  program.  After  crunching, 
delete  the  dummy  line.  For  example: 

10  NAME=  1000  :  FIRST  =  2000 

(define  the  subroutines) 
20  IF  X  =  0  THEN  GOSUB  1000  :  GOSUB  2000  : 

GOTO  20  (dummy  line  to  be  removed  after 

crunching) 

Note  that  the  dummy  line  is  an  IF.. THEN  statement 
that  loops  to  itself.  This  ineans  that  a  CRUNCHER, 
such  as  the  one  in  DAKIN  5  PROGRAMMING 
AIDS  3.3,  will  leave  that  line  alone,  making  it  easy 
to  remove. 

BASIC  Program  Description 

Line  180  -  Establishes  the  machine  language 
program. 

Line  200  -  Establishes  the  name  of  the  sub- 
routines to  be  called. 

Line  220  —  Demonstrates  the  command  & 
GOSUB  withoiu  passing  any  variables. 

Line  250  —  A  loop  is  used  to  show  that  the 
stack  is  not  corrupted  by  using  these  new  com- 
mands. An  OUT  OF  MEMORY  ERROR  will  occur 
for  25  GOSUB  calls  without  a  proper  return. 

Line  260-280  -  Establish  random  numbers  for 
use  in  the  variables. 

Lines  290-320  -  Demonstrates  the  &  GOSUB 
command  using  both  simple  variables  and  arrays 
elements.  The  example  subroutine  adds  together 
the  first  two  numbers  passed  to  it.  Fhe  result  is 
passed  back  in  the  third  parameter. 

Line  360  -  Demonstrates  that  the  subroutine 
call  operated  and  that  parameters  were  passed 
both  ways. 

Line  370  -  Delay  loop. 

Line  1000  -  Subroutine  called  without  passing 
variables. 

Line  2000  -  New  subroutine  showing  that 
variables  were  passed  and  used  within  the 


subroutine. 

Line  5000-5070-  Machine  language  loading 
subroutine.  It  first  checks  that  ihc  D.VFA  state- 
ments have  been  typed  in  correctly.  Each  D.4  r.\ 
statement  is  the  value  of  16  locations  plus  the  simi 
of  the  previous  16  locations  used  as  a  simple  check- 
sum. A  (ypo  error  is  indicated  if  the  checksum  is 
not  the  sum  of  the  previous  16  locations. 

Line  5080-5120-  Checks  that  POKEs  have 
been  performed. 

Line  5130-5140  -  POKEs  the  routine  into 
memor\ . 

Line  5150-This  establishes  the  AMPERSAND 
vector  {He)  pointers.  This  call  is  not  necessary  if  the 
machine  code  is  BRUN,  but  is  neces.sary  if  the 
subroutine  is  BLOADed.  Note  that  the  C.\LL 
from  BASIC  is  not  the  start  of  the  ML  program.  If 
we  did  CALL  the  start  of  the  program,  an  automatic 
NEV\^  would  occur,  wiping  otit  the  demonstration 
program. 

Machine  Code  Description 

Briefly,  the  machine  language  program  works  as 
follows : 

&:  GOSUB  NAME!NAME(0),A,B...!    Ihe  text 
pointers  to  the  variable  A  are  stored  in  the  first  two 
bytes  of  N  AME(O).  Then  the  value  ot  A  is  moved 
into  NAVIE(l),  B  into  NAME(2)  and  so  on. 

&  GET  !NAME(()),W,X,...!  The  text  pointers 
to  the  variable  W  are  stored  in  the  seconri  two  bytes 
of  NAME(O).  The  value  of  NAME(l)  is  moved  into 
W,  NAME(2)  into  X  and  so  on. 

8c  RETURN  !NAME(())I  Tiie  text  pointer  to 
W  are  recovered.  The  current  values  ol  W,  X  ..  are 
moved  into  NAME(l),  NAME(2)  etc.  Then  the  text 
pointer  to  A  is  recovered.  The  values  in  N  AME(  1 ), 
NAME(L') ...  are  moved  into  A,  B.... 

The  method  of  implementing  the  other  com- 
mands is  described  in  COIMPUTE!  #1 2. 

Lin«,'s  15-31  -  Zero  page  usage. 

Lines  33-43  -  Definition  of  tokens. 

Lines  45-61  -  Pointers  to  Applesofi  routines. 
Internal  Applesoft  routines  arc  used  to  cut  down 
the  amoimt  of  code  required. 

AD] MEM  and  AMPER.  Lines  65-77  -  Do  the 
machine  language  equivalent  of  POKE  104,0  ; 
POKE  2560,0  :  NEW.  Then  set  the  AMPERSAND 
vector. 

ENTRY.  Lines  80-92  -  C:heck  on  which  of  the 
new  commands  is  re(|uired. 

GOTO.  Lines  94-99  -  Front  end  of  the  normal 
Applesoft  GOTO  routine  moved  and  modified  to 
allow  variables  and  numbers  to  be  used  in  the 
GOTO  statement. 

GOSUB.  Lines  101-134-  Handling  of  the  8c 
GOSUB  command. 

Line  101  -  Front  end  of  the  normal  Applesoft 
GOSUB  routine  moved  and  modified  to  allow 


utilit9Cit9 

21  of  our  most-askcd-for  Apple  Utilities 


4BK  A0p;C5Dft  ROM 


by  Bert  Kency 

Fof  yOUR  B13  App4e-Our  91  mo4t-«fied-fw  Apple  Ubibci  or  on*  bq 
dWi— Uil  Formatter  malc«  property  ip«ed  A  inatnted  Irelings  with 
pnmtr  pvgc  brcria  Each  prog/flm  Jtfltem«ni  h  ofl  a  new  fcrw  with  «■ 
Then's  &  Loopl  cated  out,  ngiral  d^-Wggtrf  C*Uk>g  In  •nynumtwf 
<rf  cotumnt  A  sny  po^t  w«jm  lo  CJTT  or  pfinter  AutofnatJcat/  poll 
the  Bun-Numbei  J.  Id&l  us«d  Ootc  in  ycur  prasfflmf.  Mike  *ny 
cpmmind  tnwhJW*  in  youf  iwnsi,  Access  pfogram  ine*  in  memory 
(Or  sarbsgc  repar  A  "jlkgfll"  aJtcratton;  Quicitly  Sort  &  slof*  into  on 
e3iiic;  Run  any  Applesoft  Me  while  another  stays  iniacli  Move  lir*s 
within  your  programs,  BenLnnCter  to  65535;  Sa«e  irvtiSc,  INVlStaLE  5. 
trick  fite  fwnes;  Convert  dec  to  hex  &  twnafy,  or  l^^'  to  FP,  Append 
prosrams,  dump  the  lent  screen  to  ANY  printer,  .  wore  too  ■'ll 
?rt>griin»  TauH 


.  APPLE  TIP  BOOK  NUMBER  THREE! 

it  nrw  tips.  I.jcks  A  arl,c3eS-'DOS  tMchery,"    Xi 


\n9^ 


^  Ullltty  Crty  on  Apptesoft  Oyc 

/■  40pflge  Beagle  Broi  Apple  lip  Book   = 

}/  Apple  PEEKS,  POKES  A  POINTERS  Chart 


alpha  plot 

Hi-Rcs  Apple  Graphics/Text  Utility 

by  l«rt  Ke(My  A  J*ck  Caiildy  4aK  ttOUIKD 

HI-RES  DRAWING;  create  hi-rcs  pittures  &  charts, 

«pfxndit>ic  lo  your  prosrtnti.  Keyt>o«d  or  Paddle  con^ol,  Op- 
bofiS*  Xdraw  Cu^rsor  C«e  fcfKi  tJetOf  e  you  draw!),  Any  colOf  mra  or 
REVlRSE  (oppojrte  o'  l»cJ<^oijf>d),  Gr cks,  Boscs  A  Espies^  rued  cm 
not  BortLft  Program*  loo— K»lJHOfEH  stores  f>-r«i  tn  m  ittte  011/  3 
normd dtiJlc sp4ce  SHUFtUtlramrrrsany portoroFtnct^-ressciee^ 
AKo  iL<>erimpo«  r*r«  mngci  arwd  convert  HeRes  to  Lo-ftes  A  tiac^ 
For  lAiai^atir^g  acntracu* 

HI-RES  TEXT:  Be,{wMul  uppe'  h  kjwer  cast  wtn  Descenden, 
COtof  Or  reverie.  PoHOonable  anywhere  (MOT  restricted  by  Htabi  & 
Vtabi).  ProfesMonal  tootong  PHOKMinOMAL  SPACINGt  Adjuitaljte 
Type  Si£e,  Leading  (Ime  spacingj  &  Kerning  {letter  spacing).  Mult<- 
d^ecdonAl  typing,  up,  down,  even  bocifwa-dsl 


^4tf%Ull  ^  ^^P***  ^***  °'^  Applesoft  Disk. 
^Jyr^  i/40-pa3e  aeasle  Bros  Apple  Tip  Book  = 
•  Apple  PtEKS,  POKES  a  POiNTERS  Chart. 


Apple  Utility  Disks! 

With  Free  PEEKS  &  POKES  Wall  Chart! 


4315  »crra  Vltta 
San  DIC30, 
CA  92103 

714-996-6400 


WITH  EACH  ORDER,  YOU,  WILL  RECEIVE  . , . 

_.  Cot  lou,  UtUrty  Oty  of  AJp4M  Ptot  en  AppieioFt  DhK 
.J  A  40-P43C  Apph  Tip  took  (€«Lh  «ibrr!y  ^tlercntl 
□  An  IW  7  Apple  PtOti,  KJMS  1,  POtHIIia  Chart 


dor  bo// 

DISK  COMMAND  EDITOR 

by  »ert  Kency  A  JtcSf  CmHldy 

A  cl«MC  uirity  you  wiU  £NJOy?  Acnarrc  Comnandi:  "Cstalog"  can 
\x  "Cat,"  etc  SiT*-PrDt«ct  your  prognmi;  Urouthonied  copy  al- 
tempts  prodi^e  "Not  Copysble'  mestagc  1  -Key  Progj-nm  Sdec^lion 
(rom  catalog  (extremely  handy!]  Catalos  Customize'— Cn a r^ge  DrsJi 
Volume  message  to  your  tjOe^  Orrtt  o'  atiei-  flte  codes,  Catalog  by  Tie 
type,  etc  Hewnte  Eiror  MesJages—  SytitaxErior"  cflnb«"Oopsr' 
ar  anythJng  you  wsnl! 

All  of  Doi  io«»'»  chingc  fcauics  may  be  ipp^rtdtd  to  your  pro< 
girainf.r  19  thtt  anyone  uilng  your  dtsk»  on  any  Appk  (booted  -ai 
not)  wlH  tK  fonnitti/ig  DOS  the  way  yotj  designed  Kl 


APPLE  TIP  BOOK  NUMBER  TWO* 

z  00s  information  ■■Poij'>g  AiourxJ  fi  POS.'  '  t- 
lisr^ibfe."  "Two-^ded  Dm  r.oi, "    c*e  ol  Vouf  Di 


^  Dot  lou  on  Appltioft  Dilk 

'^  40  page  Bea^te  Bros  Apple  Tip  Booh  ^5 

•"  Appte  PEEKS,  POKES  A  POINTERS  Cr^ait 


MINIMUM  3EK  R£00llt£D 


WITH  ESCH  DISK! 

!  POtfE  your  Apple  all  night  long  with  tNs  handy  11x17  refer- 

■^•^^_  cnce  poster!  The  most  useable  PEEKS,  POKES,  POINTERS  4 
■^^=  CALLS  scrourjgcd  up  frprn  every  source  imaginable!  A  great 
t^S:  compar^ion  to  our  onsinal  Apple  Command  Chart 


Mhou,  TOLL  nffijorder  Desk: 

SS;*  £-51-03 -IS 


t- 


I  RUSHI  The  disks  checked  below 

I  Plus  The  Tip  Book  and  PEEKS  &  POKES  Chart! 

!  D  UTIUTYCITY         D  AUtiA  PLOT       D  005  BOSS 

I  <!31)  (141)  (185.501 

I    (Wees  rcludt  Frrt  Ctais  Shconi  C«r.  feikknts  add  6%.) 

I  Specif^! 

I  NAMEi= a  3.8      D  3.3 

ADDHt= 

CiTYt= ZIP= 


VISA/MASTEKCAW): 

Include  Account  No. 

&  Expiration  Date. 


VKA 


Aik  around  about  ■^■■■IcasK  Broi  Softwire. 

Our  programs  are  practical,  friendly  A  user-oriented,  and 
always  cortie  with  an  amazing  amount  ot  documentation  & 
juicy  Apple  information.  If  your  dealer  doesn't  have  our  stuff, 
get  on  his  case  about  it,  or  order  directly  from  us.  We  ship  all 
disks  i  tKXJks  VMmiN  48  HOURS. 


fv\ail  U.S.  Check,  money  order  or  Visa/MC  Numbers 
to;  BEAGLE  BROS,  Dept.  S 
431S  Sierra  Vista, 
San  Diego,  CA  99103 

Telephone  (714)  296-6400 

Please  add  $4.50  for  shipping  outside  US  or  CanTda. 
COD  orders,  add  S3       California  residents,  add  6%. 


variables  and  numbers  in  subroutine  calls. 

Line  121  —  Is  the  first  parameter  an  array? 
This  array  is  used  for  the  storage  of  the  text  pointers 
and  the  parameters.  The  stack  would  get  too  full  if 
it  were  used. 

Line  130:  -  Store  text  pointers. 

Line  132  -  Move  the  other  parameters  into 
the  array  for  storage. 

GET.  Lines  136-140  -  Handling  of  the  &  GET 
command. 

Line  136  -  Locate  the  storage  array. 

Line  137  -  Store  the  text  pointers. 

Line  139  -  Move  values  stored  in  the  array 
into  the  new  parameters. 

ARRay-GET.  Lines  142-149  -  Gets  and  stores 
the  location  of  the  storage  array  after  checking  the 
leading  exclamation  mark. 

ON.  Lines  151-189  -  Handling  of  the  ON  X... 
command. 

Line  152 -Get  the  value  of  X. 

Line  154  -  Determine  if  ON. .GOTO  or  ON.. 
GOSUB. 

Line  163  -  Decrement  X  until  find  the  sub- 
routine requested. 

Line  167  -  Step  over  the  values  not  being 
used. 

Line  172  -  Return  to  BASIG  if  subroutine  not 
found. 

Line  176-189  —  Adding  these  instructions  will 


allow  the  passing  of  parameters  in  ON  X... 
commands. 

RETURN.  Lines  191-213  -  Handling  of  the  & 
RETURN  command. 

Line  191  -  Locate  the  storage  array. 

Line  198  -  Store  the  current  text  pointers. 

Line  199  -  Recover  the  text  pointers  from  the 
&  GET  statement. 

Line  200  -  Move  the  current  values  of  the 
parameters  in  the  &  GET  statement  into  storage. 

Line  201  -  Reset  the  storage  array  pointers. 

Line  205  -  Recover  the  text  pointers  from  the 
&  GOSUB  statement. 

Line  206  -  Move  the  values  in  the  storage 
array  into  the  parameters  used  in  the  &:  GOSUB 
statement. 

Line  207  -  Recover  the  current  text  pointers 
and  perform  a  normal  RETURN. 

CHecK-ARRay.  Lines  215-228  -  Checks  and 
adjusts  the  poiijters  to  the  storage  array  if  new 
variables  have  been  introduced  during  the  com- 
mands &  GOSUB  and  &  GET. 

Modifications  to  the  next  two  subroutines, 
PARSTO  and  STOPAR  will  allow  the  passing  of 
INTEGER  parameters. 

PARameters-to-STOrage.  Lines  230-243  - 
Moves  the  current  values  of  the  parameters  in  the 
&  GOSUB  and  &  GET  commands  into  the  storage 


74 


COMPUTEI 


Februorv.  1982,  Issue  21 


array.  Checks  for  integers  and  strings. 

STOrage-to-PARameters.  Lines  244-257  - 
Moves  the  vahies  in  the  storage  array  into  the 
parameters  in  the  &  GOSUB  and  8c  GET 
commands. 

STOre-TeXT-pointers.  Lines  259-264 -Stores 
the  current  text  pointers  into  the  zeroth  element 
(NAME(O))  of  the  storage  array.  The  Y  register  is 
preset. 

GET-TeXT-pointers.  Lines  266-271  -  Re- 
covers the  text  pointers  stored  in  the  zeroth  element 
of  the  storage  array  according  to  the  value  set  in 
the  Y  register. 

ADJust-PoinTers.  Lines  273-276  -  Adjust  the 
pointers  to  the  storage  array  if  they  have  shifted 
because  a  new  variable  has  been  made.  Note  that 
the  pointers  don't  have  to  be  adjusted  if  a  new 
array -has  been  made.  All  new  arrays  will  be  placed 
above  the  storage  array  in  memory  as  the  storage 
array  is  defined  first. 

COMmand-END.  Lines  278-283  -  Looks  for 
the  final  exclamation  mark  (!)  of  the  command  or 
other  parameter.  Pops  the  last  subroutine  address 
off  of  the  stack  allowing  a  quick  retiwn  to  BASIC  if 
at  the  command's  end. 

References 

" Applesoft  Internal  Entry  Points"  by  Applesoft  Computer  Inc.  in 

Apple  Orchard  MarchI April  1980,' p.  12. 

"Sonif  Routines  in  Applesoft  Bti.'.ic"  l>\  }.  Hullerfii'ld  in  COMPUTE!. 
SeptemhniOrtohi-r  1 9S0,  p.  6S. 

"Resolving  Applesoft  and  Hires  Graphics  Memory  Conjlirts"  by  J. 
Schmoyer  hi  COMPUTE!,  April  1 981 ,  p.  76.     ' 

"Using Named  GOSUB  and  GOTO  Slakmeiits  in  Applesoft  BASIC" 
by  M.  Smith  in  COMPUTE!,  May  1981.  p.  6-/. 


100 

110 
120 
130 
140 
150 
160 
170 
180 
190 

200 

210 

220 

230 
240 

250 
260 
270 


***************************** 

REM  *  MIKE  SMITH  * 

REM  *  304,  86TH  AVENUE  SE    * 

REM  *  CALGARY,  ALBERTA       * 

REM  *  CANADA   T2H  1N7         * 
***************************** 

REM 

REM  SET  UP  THE  MACHINE  CODE 

GOSUB  5000 

REM    SET  UP  THE  SUBROUTINE  NAM 

ES 

DEMO  =1000:ADDIT  =  2000 

REM   DEMONSTRATE  NAMED  GOSUB  AN 

D  GOTO 

&   GOSUB  DEMO:JUMP  =  240:  k       GO 

TO  JUMP 

REM  DEMONSTRATE  STACK  OKAY 

PRINT  "HERE  BY  NAMED  GOTO":  PHI 

NT 

FOR  J  =  1  TO  25 

REM  MAKE  UP  NUMBERS 

K  =  INT  (10  *  RND  (D):  =  INT  ( 

10  *   RND  (D) 


280  P  =  INT  (  10  *  RND  (1)):Q(1)  =  ~ 

INT  (10  *  RND  (1) ) 
290  REM 

300  &   GOSUB  ADDIT!ADDIT(0) ,K,L,M! 
310  REM    DEMONSTRATE  PASSING  OF  AR 

RAY  ELEMENT 
320  &   GOSUB  ADDIT1ADDIT(0) ,P,Q (1) , 

R! 
3  30  REM 
340  REM  PRINT  AND  SHOW  THAT  HAVE  US 

ED  SUBROUTINE 
350  REM 
360  PRINT  K;"  +  ";L;"  =  ";M:  PRINT  ~ 

P;"  +  ";Q(1) ; "  =  ";R:  PRIN 

T 
370  FOR  Z  =  1  TO  500:  NEXT  Z 
380  NEXT  J:  STOP 
970  REM 

980  REM   DEMONSTRATION  SUBROUTINE 
990  REM 
1000  PRINT  :  PRINT  "HERE  BY  THE  GOSU 

B  CALLED  DEMO" 
1010  PRINT  :  RETURN 
1960  REM 

1970  REM   SUBROUTINE  ADDIT 
1980  REM 
1990  REM   DEMONSTRATE  PASSING  BACK  0 

F  ARRAY  ELEMENT 
2000  &   GET  !ADDIT(0) ,T,U,V{4) ! 
2010  V(4)  =  T  +  U 
2020  &   RETURN  !ADDIT(0)! 
4970  REM 

4980  REM   MACHINE  CODE  ESTABLISHED 
4990  REM 

5000  BOT  =  8  *  256  +  3:HIGH  =  9  *  25 

6  +  10  *  16  +  2 
5010  REM  FLAG  FOR  CHECKSUM 
5020  OK  =  1:LINE  =  6000 
5030  FOR  J  =  BOT  TO  HIGH  STEP  16 
5040  CHECK  =  0:  FOR  K  =  J  TO  J  +  15: 
READ  IT:CHECK  =  CHECK  +  I 

T:  NEXT  K 
5050  READ  NUM:  IF  NUM  <  >  CHECK  THEN 
PRINT  "TYPO  IN  LINE  "LINE 

:  :  OK  =  0 
5060  LINE  =  LINE  +  10:  NEXT  J 
5070  IF  OK  =  0  THEN  STOP 
5080  PRINT   :  INPUT  "DID  YOU  REMEMBE 

R  THE  POKES?  " ;  A$ 
5090  IF  LEFTS  (A$,l)  =  "Y"  THEN  5130 

5100  PRINT  :  PRINT  "SAVE  THIS  PROGRA 

M  AND  THEN" 
5110  PRINT  :  INVERSE  :  PRINT  "NEW:PO 

KE104,10:POKE2560,0:NEW":  - 

NORMAL  :  PRINT 
5120  PRINT  "THEN  RELOAD  AND  RUN.":  S 

TOP 
5130  RESTORE  :  FOR  J  =  BOT  TO  HIGH  S 


Febmary,  1982.  Issue  21 


COMPUTE! 


75 


TEP  16 
5140  FOR  K  =  J  TO  J  +  15:  READ  IT:  P 

OKE  (K),IT:  NEXT  K:  READ  I 

T:  NEXT  J 
5150  PRINT  :  PRINT  "BLOAD  OKAY":  CAL 

L  BOT  +  12:  RETURN 
5970  REM 

5980  REM   MACHINE  CODE  DATA 
5990  REM 
6000  DATA  169,10,133,104,169,0,10,32 

,7  5,214,169,7  6,141,24  5,168 

8 
6010  DATA  3,169,31,141,246,3,169,8,1 

41,247,3,9  6,201,171,24  0,25 

,1894 
6020  DATA  201,176,240,36,201,190,240 

,106,201,180,208,3,76,181, 

8,201,2448 
6030  DATA  177,208,3,76,230,8,76,201, 

222,32,66,8,76,65,217,32,1 

697 
6040  DATA  177,0,32,123,221,76,82,231 

,169,3,3  2,214,211,165,185, 

72,1993 
6050  DATA  165,184,72,165,118,72,165, 

117,72,169,176,72,3  2,66,8, 

32,1685 
6060  DATA  183,0,201,0,240,38,201,58, 

2  4  0,34,2  01,44,240,30,32,16 

6,1908 

6070  DATA  8,196,108,48,6,208,7,197,1 

07,16,3,7  6,15  0,225,32,249, 

1636 
6080  DATA  234,32,106,221,160,0,32,11 

9,9,32,52,9,32,63,8,76,118 

5 
6090  DATA  210,215,32,163,8,160,2,32, 

119,9,32,87,9,76,149,217,1 

520 
6100  DATA  32,177,0,201,33,208,143,32 

,177,0,32,227.22  3,133,0,13 

2,1750 
6110  DATA  1,96,32,177,0,32,248,230,7 

2,2  01,176,240,13,201,171,2 

40,2130 
6120  DATA  9,201,175,208,224,104,32,1 

77,0,7  2,198,161,208,4,104, 

76,1953 
6130  DATA  31,8,32,177,0,32,227,223,3 

2,183,0,201,44,24  0,235,104 

,1769 
6140  DATA  104,104,96,32,163,8,141,16 

2,9,140,163,9,16  5,18  4,72,1 

65,1717 
6150  DATA  185,72,160,2,32,129,9,32,5 

2,9,173,162,9,133,0,173,13 

32 
6160  DATA  163,9,133,1,160,0,32,129,9 

,32,87,9,10  4,133,18  5,104,1 


290 
6170  DATA  133,184,32,177,0,76,107,21 

7,16  5,107,197,2,208,1,9  6,1 

33,1835 
6180  DATA  2,169,7,208,2,169,5,24,101 

,0,133,0,2,144,230,1,1197 
6190  DATA  96,32,139,9,32,123,221,32, 

106,221,16  5,18,240,3,76,19 

8,1711 
6200  DATA  8,32,27,9,166,0,164,1,32,4 

3,235,32,149,9,32,177,1116 
6210  DATA  0,76,55,9,32,139,9,32,227, 

223, 32, 27, 9, 165, 0,164, 1199 
6220  DATA  1,32,249,234,166,131,164,1 

3  2,3  2,4  3,2  35,3  2,149,9,32,1 

77,1818 
6230    DATA    0,76,90,9,165,184,145,0,20 

0,16  5,185,14  5,0,9  6,177,0,1 

637 
6240    DATA    133,184,200,177,0,133,185, 

9  6,165,107,133,2,32,40,9,7 

6,1672 
6250    DATA    190,222,32,40,9,32,183,0,2 

01,33,208,2,104,104,96,0,1 

456 
6260    DATA    104,104,96,0,0,0,0,0,0,0,0 

,0,0,0,0,0,304 


MEMOREX 

FLBXULE  DISCS 

gj^g^^aX*4 

WE  WILL  NOT   BE   ONDER- 
SOLDn  Call  Free  <800)235-4137 

_          for  prices  and  information.  Dealer 
^         inquiries     invited     and     CO.D.'s 
5          accepted 

^'^             111        "^ 

PACinc 

EXCHANGES 

100  Foothill  Blvd 

San  Luis  Obispo,  CA 

93401,  InCalcall 

(800)592-5935  or                  ffg^ 

(805)543-1037                        ■■■ 

TOLL  FREE 

Subscription 

Order  Line 

800-345-8112 

In  PA  800-642-2444 


THE  MOSAIC  32K  RAM  FOR  ATARI 


THE  MOSAIC 
ADVANTAGE 

MOSAIC 
32KRAM 

OTHER 
32KRAMS 

Works  in  both  Atari  400  S  800 

Gold  edge  connectors  for  better 
reliability 

Fits  Atari  400  without 
modi  fi  cation 

Custom  components  for  t>etter 
performance  &  reliability 

Highest  quality  components  for 
the  best  screen  clarity 

Full  year  warranty 

Designed  to  take  advantage  of 
Atari  800's  superior  bus  structure. 

Can  be  used  with  8K,  16K  and 
future  produas. 

Allows  Atari  800  to  have  2  slots 
for  future  expansion 

Designed  so  there's  no  danger  of 
damaging  your  computer 

Designed  for  Inter-board 
communication  in  Atari  800 

Easy  to  follow  instructbns  for 
simpler  no-solder  installation  in 
Atari  400 

Available  companion  board  ( S5)  to 
allow  running  32K  board 
independent  of  other  boards 
Full  flexible  memory  configuration 

■ 
■ 
■ 

i^  DESIGN 

i^  MATERIALS 

*>  SAFETY 

i>  GUARANTEE 

THE  ONLY  CHOICE 

You  own  the  best  micro  computer  available,  the  Atari*.  At 
Mosaic  we  Ve  made  Atari  computers  our  only  business  and 
have  made  our  products  the  best  anywhere.  You've  seen  the 
advantage  of  having  a  32K  RAM  board.  The  Mosaic  32K 
RAM  is  the  only  board  designed  to  meet  your  needs  now 
and  in  the  future  too.  It  has  designed-in  flexibility  to  be 
compatible  with  products  available  in  the  near  future.  See 
for  yourself,  Mosaic  is  the  only  choice  for  the  serious 
Atari  owner 

THE  BEST  SCREEN  CLARITY 

Here's  what  A,NAl,O.G.  magazine  had  to  say:  "Mosaic 
uses,  what  we  feel  are  the  highest  quality  components, 
which  may  mprove  reliability."  and  'The  Mosaic  showed  no 
sign  of  interference  and  gave  the  t)est  screen  clarity." 


Atari  800 

Memoiy 

Conllgiiration 

With  the 
MOSAIC 

With 
other  32K 

Atari  800 

Memory 

Configuration 

wfththe 
MOSAIC 
32KRAM 

With 

other 32K 

Boards 

32KIIAM 

Soardi 

■  32K                ■ 

40K  U/.lt-  BASIC 

■i8K  RAM 

40KW,irh  BASIC 

Caniidge 

■  SK                    H       40K  RAM 

OangerJ  :,'i;\ 
ConfiqurArinnC^n 
D^rntigf-  Compu[er 

l^J^J 

Danger]  Trus 
Ccn(igu?^rinnC,?n 
D^m,?gc  Compjrpf 

ASKHAM 

40KWjthB/^JC 

Ctirifidge 

Dangerl  This 
Configur^iron  Can 
D^m^ge  Compurei 

i^~i 

■  .6K               ■ 

4eKRAM 

40K  Willi  BASIC 

C^ftncge 

Dangerl  This 
Configuwtron  Can 
Dsm^ge  Compwer 

Oangerr  This 
Configuffition  Can 
Darragp  Ccmpuier 

^^^J 

|3^^ 

Now  from  your 
nearest  Mosaic  dealer 


$179.95 

Direct  from  Mosaic  SI 89,95 


■Trade  Mark  of  Atari,  Inc. 


i^mosmc 

ELECTRONICS 

PO.  Box  748  Oregon  City.  Oregon  97045  503/655-9574 


Febf  uoiy,  1982.  Issue  21 


COMPUTE! 


77 


INSIGHT:  Atari 

Bill  Wilkinson 

Optimized  Systems  Soflware 

Cupertino,  CA 


This  month  marks  the  end  of  my  series  on  Atari 
I/O.  That  certainly  doesn't  mean  that  we  won't 
continue  to  discuss  assembly  language  I/O  of  related 
topics;  it  simply  means  that  I  feel  I  have  finished 
my  formal  presentation  of  the  material.  Again,  I 
strongly  urge  you  to  purchase  the  Atari  Technical 
User's  Notes  (available  i'rom  Cusl(jmer  Service,  1340 
Bordeaux  Ave.,  Sunnyvale,  CA  94086,  for  $30, 
including  shipping).  There  is  a  lot  of  detail  in  those 
"notes,"  including  much  that  I  have  glossed  over.  I 
hope  that  my  presentation,  though,  has  served  as  a 
usable  introduction  to  the  subject. 

Also  this  month,  I  give  you  a  method  for 
creating  relocatable  assembly  language  programs 
(and  a  method  to  then  load  them).  We  use  the 
loader  to  implement  our  "M:"  driver  from  last 
month,  completely  via  BASIC  (thus  making  it 
usable  for  those  of  you  not  yet  into  assembly 
language. ..and  it  is  usable). 

Finally,  we  continue  our  discussion  of  how 
BASIC  works.  De  Re  Atari,  and  the  serialized  version 
thereof  which  appears  in  this  month's  BYTE,  does 
a  good  job  ol  discussing  the  how  of  BASIC'S  syn- 
taxer;  we  will  delve  into  the  why. 

Atari  I/O,  Part  4:  GRAPHICS 

Errata!  Before  we  get  started  on  this  month's  topic, 
I  must  report  an  error  I  made  in  COMPUTE!  #18. 
On  page  100,  in  Table  I,  under  the  "Note"  per- 
taining to  ICBLL/ICBLH,  I  stated  that  the  length 
is  decremented  by  one  for  each  byte  transferred. 
Actually,  Atari's  OS  is  smarter  than  that:  upon 
return  from  GET/PUT  RECORD  (text  or  binary) 
ICBLL/ICBLH  contain  a  coiuit  of  the  number  of 
bytes  successfully  transferred.  This  result  is  emi- 
nently usable  (e.g.,  in  copying  records  or  even 
whole  files),  and  perhaps  we  will  have  a  program 
here  soon  that  demonstrates  its  use. 

On  with  the  new:  this  whole  series  started  as  a 
result  of  a  comment  that  I  read  which  said  some- 
thing like  "Atari  graphics  from  assembly  language 
are  hard  to  do  —  you  have  to  know  about  display 


lists,  vertical  blank  interrupts,  etc."  Knowing  how 
BASIC  does  graphics  for  its  users  I  said,  "Nonsense! 
It's  easy!  Someone  should  show  how  easy!"  And 
Richard  Mansfield,  of  COMPUTC!,  said,  "Gee,  I 
wonder  who  we  could  get..."  Ahem. 

If  what  you  are  trying  to  do  is  write  an  im- 
proved version  of  Eastern  Front  or  Pacman  or 
some  other  such  pioneering  project,  then  you  need 
to  know  everything  ever  published  and  then  some. 
But,  if  what  you  want  is  simply  a  way  to  transfer 
what  you  have  learned  or  written  using  BASIC 
into  a  reasonably  simple  set  of  assembly  language 
routines,  read  on. 

Remember,  BASIC  does  all  its  graphics  and 
I/O  via  Atari's  OS.  BASIC  knows  nothing  of  graph- 
ics modes,  display  lists,  character  sets,  color  regis- 
ters, etc.  (True,  BASIC  A+  does  its  own  thing  with 
Player/Missile  Graphics,  but  that's  only  because 
Atari's  OS  doesn't  know  about  PMG.)  So,  anything 
done  with  standard  BASIC  statements  can  be 
duplicated  easily  in  assembly  language.  To  demon- 
strate the  truth  of  this,  Figure  1  contains  a  list  of 
the  seven  BASIC  graphics  statements  together 
with  a  note  on  how  each  is  accomplished. 

Accompanying  this  article  is  a  hsting  of  my 
proposal  for  a  set  of  standard  routines  to  be  used 
by  assembly  language  programmers  when  inter- 
facing to  OS  graphics.  These  routines  duplicate,  as 
far  as  practicable,  the  statements  used  to  do  BASIC 
graphics.  The  listing  clearly  calls  out  ENTRY  and 
EXIT  parameters  for  each  routine  (i.e.,  register 
usage),  so  study  it  carefully. 

As  a  very  simple  example  of  the  routines' 
usage,  I  offer  a  program  fragment  that  is  written 
in  both  BASIC  and  assembly  language: 

GRAPHICS  3  LDA#3 

JSR  GRAPHICS 
COLORS  LDA#3 

JSR  COLOR 
PLOT  10,10  LDX#10 

LDA#0 

LDY#10 

JSR  PLOT 
DRA  WTO  25,15  LDX#25 

LDA#0 

LDY#15 

JSR  DRAWTO 
SETCOLOR  2,0,14         LDX#2 

LDA#0 

LDY#14 

JSRSETCOLOR 

Before  leaving  this  topic,  some  notes  on  the 


78 


COMPUTEI 


February  1982.  Issue  21 


routines  might  be  helpful:  since  the  A-register  will 
be  zero  upon  eniry  to  PLOT,  DRAWTO,  LOCATE, 
and  POSITION  for  all  graphics  modes  except 
GRAPHICS  8  (or  24),  placing  a  LDA  #0  in  the 
beginning  of  POSITION  would  save  code  for 
anyone  not  using  mode  8.  Remember,  Atari's  "S:" 
driver  can  accomodate  GRAPHICS  0  through  1 1 
and  1 7  through  24.  Adding  32  ($20)  to  any  graphics 
mode  (at  die  time  of  the  call  to  CiRAPHICS)  will 
suppress  the  erasure  of  the  screen.  (I  haven't 
figured  GUI  a  use  for  this  yet,  but  it's  nice  to  know 
it's  there.) 

Obviously,  one  could  save  time  (and  sometimes 
space)  by  performing  C:OLOR  and  SETCOLOR 
and  POSITION  via  simple  stores  (e.g.,  S  EA),  but 
there  is  a  certain  structuring  and  elegance  that 
goes  with  the  use  of  the  routines.  The  graphics 
roulines  listed  herein  were  assemlaled  in  the  .1600 
page  of  memory,  a  much  overworked  location.  I 
would  hope  thai  you  would  take  ihe  time  to  type 
them  in  to  your  assembler/editor  and  include  them 
directly  in  fulin*e  programs  (EASMD  users  may 
.INCLUDE  them  indirectly).  I  really  would  appre- 
ciate hearing  of  your  successes  (or  failures,  if  any) 
using  these  roiuines. 

So  far,  no  assembler  available  for  the  Atari 
produces  relocatable,  linkable  object  files  (and, 
from  what  I  have  heard,  neither  will  Atari's  Macro 
Assembler).  When  we  i^roduced  BASIC  A+  and 
EASMD,  we  wanted  them  to  move  themselves  to 
the  top  of  memory,  so  we  re-invented  a  scheme  I 
have  seen  in  several  incarnations  before:  Assemble 
the  program  twice,  setting  the  origin  for  any  por- 
tion (s)  to  be  relocated  one  page  (256  bytes)  higher 
foi"  the  second  assemblv,  producing  two  object 
files.  Write  a  program  that  compares  the  two  objects 
and  notes  ail  locations  that  differ  by  one  (differing 
by  any  other  amoimt  is  an  error).  Produce  a  table 
(or  bit  map,  or  .,.)  of  all  these  differences.  .At  relo- 
catable load  time,  read  in  the  first  object  file  (to 
where  it  is  to  be  relocated)  and  use  the  table  lo 
change  all  the  bytes  which  need  to  be  rekjcated. 

The  system  is  a  kludge,  but  a  very  effecti\e 
one.  It  has  a  few  limitations:  voii  still  don't  have 
linkable  object  files,  you  nuist  relocate  in  full  page 
increments  (i.e.,  multiples  of  256  bytes),  and  you 
have  to  have  some  place  safe  to  put  the  relocating 
loader.  ,A.re  you  willing  lo  live  with  those  limits? 
Then  try  this. 

I  present  here  three  BASIC  programs  together 
with  instructions  for  their  use.  The  first  program, 
MAKEREL  (Program  1 ),  seems  to  be  to  be  perfectly 
adequate  as  is,  written  in  B.ASIC.  It's  a  little  slow, 
but  one  only  uses  it  when  ready  lo  create  a  new 
relocatable  object  file.  The  other  two  programs, 
LOADREL.A  and  LOADREL.B  (Programs  2  and 
3),  could  be  advantageously  rewritten  in  assembly 


language.  They  are  presented  here  in  BASIC 
because  (I)  this  method  ftilfllls  the  rct|uirement  for 
a  "safe  place"  for  the  loader  and  (2)  by  ]jresenling 
them  in  BASIC  they  can  be  used  by  those  not  yet 
ready  lo  tackle  assembly  language  and  (?>)  it  was 
easier  for  me. 

The  instructions  below  presume  the  use  of  the 
Atari  Assembler/Editor  or  the  OSS  E.-\S.\ID,  but 
they  can  be  easily  adapted  to  most  systems  that 
produce  Atari  DOS-compatible  object  files. 

How  To  Use  The  Relocator  Programs 

1 )  Write,  assemble,  and  debug  your  code  using 
some  fixed  addi"ess(es). 

2)  Ensure  that  yoiu-  code  is  all  in  one  piece  (i.e., 
there  is  only  one  *  = ,  at  the  beginning  of  the  code 
segment). 

3)  Origin  your  code  on  an  even  page  boundary 
(i.e..  use  *  =  $hhOO.  there  'hh'  specifies  any  page 
from  02  through  EE).  .\ssemtilc  the  code  into 
an  object  file  on  disk  named  "OBJEC  I  1"  (u.se 
ASM,,#D:OBJECTl). 

4)  Change  your  origin  to  one  page  higher  in  me- 
morv  (*  =  $nnOO,  where  'nn*  =  'h]i'+  1 ).  .Assemble 
the  code  U)  "OBJECT2"  (ASM  „#D:OBJECT2). 

5)  Run  the  MAKEREL  program.  It  will  produce 
the  file  "DATA.REL". 

6)  Adjust  the  value  of  the  variable  NUMREROF- 
PAGES  in  both  LOADREL.A  and  LOADRKL.B 
(Programs  2  and  3)  to  reflect  tfie  number  of  236- 
b\te  pages  needed  by  yoiu"  routine.  SAVE  the 
adjusted  versions. 

7)  Anytime  vou  want  (o  load  your  routine,  simply 
use  RUN  "D:LOADREL.A". 

Notes 

A.  Generally,  it's  a  good  idea  to  have  your  routine 
start  execution  at  the  origin'  (*  =  )  point.  Then  vou 
can  imoke  it  from  BASIC  \  ia  USR(  PEEK(  128) 

+  256  *(PEEK(129)  -  NUMBEROFPAGES) ) 

B.  If  you  RUN  "D:LOADREL.A"  again  without 
hitting  RESET,  it  will  load  another  copv  above  the 

fii-si.  Not  too  neal.  hiil  the  advantages  of  being  able 
to  thus  load  seveial  different  modules  should  be 
obvious! 

C.  LOADREL.B  performs  an  ENTER  "D:  DA- 
TA.REL". Rather  than  wailing  for  the  ENTER 

each  lime,  you  may  SAVE  the  resulianl  progrant 
(after  taking  out  the  ENTER  line)  for  a  slightly 
faster  load  of  a  specific  module. 

Finally,  we  offer  Program  4  which  ina\  be 
added  lo  LOADRFL.B  to  produce  a  relocatable 
load  of  last  month's  "M:"  driver.  (.Again,  be  sure  to 
delete  the  ENTER  line  from  LOADRFL.B.) 

For  once,  I  haven't  forgotten  you  cassette 


ARCADE  PRO  FOOTBALr 


'@®Q®eQ@®QQQQQQQQQ®@QeQQ%^ 


I 


410  510 


CHARGERS 
28 


[4TH  QTR]         RAMS 
:00         1:12  18 


An  Armchair  Quarterback's 
Dream  Come  True! 

It's  4th  down  and  14  on  your  opponent's  44  yard  line.  You're  out  of  time  outs  with  just  over 
a  minute  left  in  the  game.  You  call  it. .  .sweep  right,  screen  pass  left  or  go  for  the  bomb! 

Arcade  Pro  Football®  puts  you  in  the  middle  of  60  minutes  of  exciting  gridiron  play. 
You  control  the  action  and  call  all  the  shots.  It's  the  most  realistic  computer  sports  game 
available  and  it's  designed  exclusively  for  the  Atari  400/800®  personal  computers  by 
Arcade  PLUS. 

With  features  like  these,  Arcade  Pro  Football®  is  in  a  league  of  its  own! 

•  Play  offense  and  defense  head-to-head  against  the  computer  or  against  another 
player! 

•  Control  two  full-color,  animated  teams  in  3-D  perspective  on  a  100  yard,  scrolling 
field! 

•  4  game  variations,  including  player  handicapping! 

•  Over  25  offensive  and  defensive  play  possibilities. .  .passing,  and  catching,  running 
and  kicking! 

•  All  the  fun  and  excitement  of  real  Pro  Football. .  .penalties,  interceptions,  fumbles, 
bad  snaps,  30  second  clock — even  4-channel  sound  and  a  crowd  to  cheer  you  on! 

Arcade  Pro  Football®  is  available  on  cassette  or  disk  for  Atari®  400/800®  computers 
with  16K  minimum  memory  from  your  local  Atari  computer  dealer.  Or  send  $29.95 
(cassette)/$34.95  (disk)  plus  $2.50  postage  and  handling  (California  residents  please 
add  6%  sales  tax). 


©  1981,  Arcade  PLUS 

Atari  400/800  is  a  trademark  of  Atari,  Inc, 

Arcade  Pro  Football  is  a  trademark  of  Arcade  PLUS. 


5276  Hollister  Avenue  Suite  208  Santa  Barbara,  CA  93111  (805)683-2305 


80 


COMPUTE! 


Febiuary.  1982.  Issue  21 


users.  If  you  enter  LOADREL.A  (carefully,  please!) 
and  CSAVE  it  (or  SAVE"C:")  on  a  blank  tape  you 
need  only  change  the  last  line  to  read  RUN  "C:". 
Then  NEW  and  enter  LOADREl,.B,  leaving  out 
the  ENTER  line,  but  including  the  listing  of  Pro- 
gram 4.  Use  SAVE"C:"  (do  NOT  use  CSAVE... it 
won't  work!)  to  place  the  resultant  combination  on 
the  tape  after  LOADREL.A  (and,  of  cotuse,  you 
could  then  follow  on  the  same  tape  with  a  program 
of  your  own).  You  may  now  enjoy  the  "M:"  driver 
via  this  tape  by  CLOADing  and  RUNning  the  first 
program  (or  use  RUN"C:"  if  you  used  SAVE"C:", 
my  own  preference  for  all  but  the  largest  programs). 

M.AKEREL  could  also  be  adapted  U)  cassette 
usage,  though  not  without  difficulty  and/or  a  rela- 
tively large  amount  of  memory.  Ob%iously,  these 
programs  can  l>e  improved  upon  iremendously  by 
simply  adding,  for  example,  flexilMlity  of  file  name. 
But  my  intention  was  to  present  something  as 
simple  and  straightforward  as  possible,  in  the 
hopes  that  everyone  would  find  it  readable  and 
useful.  Obviously,  my  techniques  could  be  adapted 
to  other  machines  (does  the  PET  have  a  relocating 
assembler"'),  so  adapt  awa\  (and  be  sine  to  send 
COMPUTi!  the  results  to  share  with  the  rest  of  us). 
On  to  lighter  subjects. 

Inside  Basic,  Part  2:  The  Why  Of  Syntaxing 

Last  month  I  presented  a  program  to  print  oiu  the 
keywords  of  BASIC.  II  you  took  the  time  to  enter 
and  iTui  that  program,  vou  saw  some  strange  things 
in  the  printout  of  tlie  operators.  But  there  was  a 
method  to  our  madness,  as  you  will  see. 

Let  us  examine  the  tokenized  (internal)  form 
of  the  following  line: 

1025   PRINT  "HI  THERE",  THIS  *  (  3  +  IS(  FUN  )  ) 
:STOP 

Assuming  that  we  had  just  previously  NEWed,  the 
tokenized  form  of  that  line  is  as  follows  (all  numbers 
in  decimal); 

01    04  36  33   32    15  08   72   73  32  84  72   69    18   128 
36  43   14  64   03  00  00   00  00  37   129  56    130  44 
44  20  36  38   22 

Now  that  isn't  loo  terribly  useful  or  readable,  so 
let's  examine  the  tokens  one  at  a  time: 


number  and  this  byte. 
33  Statement  length  of  the  first  statement. 

Actually,  this  is  the  clisplacemeiil  to  the 

beginningof  the  next  staiemeni  (from  the 

beginning  of  the  line). 
32  The  token  for  PRI  NT.  Check  the  output  of 

the  keyword  printing  program  from  last 

month. 
L^  A  special  token  that  says  a. suing  constant 

follows. 
08  72  73  32    The  string  constant  consists  ofabvte  that 
74  72  69    gives  the  length  of  the  string  followed  by 
82  69         the  characters  of  die  string.  Note  that  the 

quotes  have  disappeared. 

1 8  The  comma,  tokenized. 

1 28  Out-  fnst  variablel  Operator  tokens  over 

1 27  arc  variables.  The  varialilc  number  (in 

the  variable  table)  is  1 28  le.ss  tlian  the  token 

value.  This  variable  is  THIS. 
36  The  multiplication  operator. 

43  One  vaiiety  of  left  parenthesis.  This  one  is 

a  normal  or  expression  left  parenthesis. 
1 4  ,\nother  special  token  (actually,  numljer  2 


Figure  1. 

BASIC 
Statement 

GRAPHICS g 


COLOR c 
POSITIONh.v 


PLOTh.v 

LOCATE  h,v,c 
DRAWTOh,v 

SETCOLORr,h,lu 


Action  performed 

Ifbit  4  (S 1 0)  ol'g  is  on,  ilii.s  is  the 
sameasOPEN#6, 12,g-16,"S:" 
If  the  bit  is  off,  this  is  the  same  as 
OPEN#6, 16  +  12,  g,"S:" 

(Note:  the  fifili  bii.  S2(),o(  ■g'.shuultl  be 
copied  into  AL  X 1 ,  the  OPEN  motie.) 
Simply  saves  'c'  in  a  .sale  place. 
Places  'h'  in  locations  $55  and  $56 
(LSB.MSB) 

Places  'y'  in  location  S."i4 
Performs  a  POSITION  h,v  and  then 
Performs  a  PUT #6,c  (where 'c'  is  the 
color  saved  bv  COLOR) 
Performs  a  POSITION  h,v  and  then 
Performs  a  GET  #6,c 
Performs  a  POSITION  h,v  and  ihen 
Does  a  POKE  763,  c  (c'  is  the  COLOR 
saved,  asabove)  and  then 
Performs  an  XIO  17,  #6, 12,0,  "S:" 
Is  etjuivaleni  lo  POKE  708  +  r, 
h*hl6  +  lu 


01  04 


36 


This  is  the  line  number  (4*256+1  =  1025) 

in  standard  6502  form. 

This  is  the  line  length ,  including  i  he  line 


Note:  FHJ.  may  be  performed  from  assembly  language  bv  fol- 
lowing exactly  the  same  sequence  speeiriecl  in  ihi:  Husic  Hiji-irnce 
MiiHtiiil.  .isinif  XIO  IH.ete. 


Program  1:  MAKEREL 

100  REM    »<**:    OPEN    ALL    3    FILERS    JKXOk 

110  OPEN    fl^l  ,'1,0  t"D:  OBJECT  1" 

120  OPEN    #2,'1,0,"[);C)FJ;JECT2" 

ICJO  OPEN    *3,BtO,"D;DATA.REL" 

150  REM    1KX<»:    INITIALIZE    VARIABLES    xsok 

160  L..INE=^1000  0 


of  2),  says  a  numeric 
constant  follows. 

64  03  00  00    The  constant,  in  Atari 
00  00  BASIC  internal  floating 

point  form.  This  is 
unique,  as  we  shall  see 
soon. 

37  An  addition  operator. 

1 29  The  variahle  IS  (already 
known  to  be  an  array, 
though  it  has  not  yet 
been  DIMensioned). 

56  Another  left  paren- 

thesis. This  one  is  called 
an  "array  left  paren"  in 
the  BASIC  source  listing. 
We  will  later  see  why  it 
is  distinct. 

130  Our  last  variable,  FUN. 

44  44  Two  right  parentheses. 

Strange,  they  are  both 
the  same. 

20  Our  End-Of-Statement 

token,  otlierwise  kncjwn 
as  a  colon. 

36  The  statement  end  dis- 

placement for  the  second 
statement  on  this  line. 

38  The  token  for  STOP. 
Again,  refer  to  the  kev- 
word  listing  program. 

22  An  End-Of-Line  token, 

otherwise  known  as  a 
RETURN. 

Wasn't  that  fun?  For  a  maso- 
chist?  Hopefully,  you  are  asking 
questions  that  begin  with  "Why." 

Why  tokenize  at  all?  For  com- 
pactness: in  our  example  we  saved 
six  bytes  o\er  a  straight  source 
line.  For  speed:  it  is  mucfi  faster  (at 
run-time)  to  discover  that,  for  ex- 
ample, 32  means  "PRINT"  than  it 
would  be  if  we  had  to  examine  the 
letters  "P",  "R",  "1",  "N",  "T"  for  a 
keyword  match.  Because  token- 
izing  is  almost  an  automatic  by- 
product of  syntaxing. 

Why  syntax-check  at  entry? 
Because  it  is  embarrasing  to  give  a 
program  to  someone,  have  them 
run  it,  and  get  a  SYNTAX  ERROR 
message  at  line  23776  (the  line  that 
handles  disk  full  conditions,  which 
we  never  got  to  wlien  we  were 
testing).  Because  it  makes  pro- 
gram entry  so  much  easier  for  be- 


^  ALI  BABA  and  the  Forty  Thieves 

QUALITY  SOFTWARE 

Encounter  sultans,  thieves,  fierce  and  friendly  creatures  as  you 
guide  your  alter  ego,  Ali  Baba,  through  the  thieve's  mountain  den  in 
an  attempt  to  rescue  the  beautiful  Princess.  Treasure,  magic,  and 
danger  await  you!  Up  to  seventeen  friendly  characters  can  join 
together  to  rescue  the  Princess-all  in  high  resolution  color  graphics. 
Every  adventure  is  different  and  exciting.  Alt  Baba  also  features  a 
SAVE  GAME  option  for  resumed  play  later.  Keyboard  or  joystick. 
Cat  No.  3391  Atari,  32K,  disk,  machine  language 
$32.95 


VERBATIM  DATLIFE  DISKETTES 

Perfect   for  ATARI,   APPLE,    TRS-80.    or   any   5Vt"   soft-sector 
computer  (35  or  40  track).  Includes  a  built-in  hub  protector  ring. 
Cat  No.  1147 
$28.00 


GHOST  HUNTER  ARCADE  PLUS 

Your  mission  in  GHOST  HUNTER  is  simple-rid  the  mansion  on 
Huckleberry  Hill  of  ghosts... before  they  get  you!  Features  high  resolu- 
tion, fast-paced  action  as  you  race  around  in  one  of  up  to  16  different 
mazes.  GHOST  HUNTER  is  a  one  or  two  player  game-play  solo  or 
head-to-head  against  another  player.  For  Atari  800  OR  400! 

Cat.  No.  3341   Atari  16K,  cass.,  joystick,  machine  language  $29.95 
Cat.  No.  3342  Atari  16K,  disk,  joystick,  machine  language  $34.95 


HOW  TO  ORDER 

Mention  this  ad  and  WE  PAY  SHIPPING  (UPS  ground-USA)!  Call 
or  write.  Pay  by  check,  M/C,  Visa,  or  COD  (add  SI. 40  for  COD). 
Offer  expires  March  1,  1982. 

mil  FREE  SHIPPING   FREE  SHIPPING 
FREE  SHIPPING  I II! I 


Hf\/\fELECT7^NICS 

19511  Business  Center  Dr.  Dept.  G2 

Northridge,  CA  91324 

(800)  423-5387  (213)  886-9200 


82  COMPUTEl  February.  1982.  Issue  21 

170  DCNT=:0 

20  0  REM  »!X<)K  STRIP  HEADE^R  ($FF"F'F-)  WORD  V-^-X 

220  GET  *:L,FF";GET  #lfFF- 

230  REM  STRIP  HEADER  AND  ADDRESSES  FROM  FILE2 

Z'lO  GET  t^tFFtGET  *2,FF:REM  HEADER 

25  0  GET  *2,FF:GET  |:2.FFIREh  START  ADDRESS 

26  0  GET  :|2,FFIGET  #2fFF?REH  END  ADDRESS 
300  REM  5(<*:»;  F-'ROCEEiS  ADDRESSES  *:*•)« 

310  GET  *1 ,  LOW  t  GET  *1 ,  EIRSTHIGH  I  FIRST==L0W-t-2S6*;F'IRSTHIGH 

320  GET  *1.L0W:GET  *1  ,  HIGH  t  LABT^=^a..GW+256«HIGH 

'too  REM  *»:»;  READY  TO  F-'RDDl.)CE  OUTPUT  x)k)K 

^10  FOR  A DDR -FIR ST  TO  LAST 

^120    IF  DCNT-O  THEN  PRINT  *3?LINEr'  DATA  "  H  LlNE-LINE+l  0 

^30    GET  *l,Bi;CET  12,152 

^•to   IF  e;:i=^e:;2  then  'ibo 

'tSO    IF  B2<>E;H-1,  THEN  PRINT  "BAD  RELOCATION" :  STOP 

^60   e;:  1  ^:: e;;  1  ■  ■■  f if; s t  1- 1 1; Qy\t  r em  t h e  r e l n c a t i o n  r-  a c  r of; 

^7D  PRINT  t3;")K"?;REM  AND  FLAG  THIS  BYTE 

^8  0   PRINT  *3;bi; 

^90    DCNT==:DCNT+1 

50  0    IF  DCNT<=^:9  THEN  PRINT  *3r\"; 

510    IF  DCNT>9  THEN  DCNT^^^O  J  PRINT  *3 

520    NEXT  ADDR  ^ 

53 D  REM  »:**:  CLEAN  UP  s:** 

5^0  IF  DCNT^^U)  THEN  PRINT  *3;LINE;"  DATA  "t 

5^.0  PRINT  #3?"==" 

560  PRINT  *3r'GnTn  50  0" 

58  0  CLOSE  #i: CLOSE  fZJGLOSE  *3 

59  0  END 


Program  2:  LOADREL.A 

10    REM    «**    THIS    IS    LOADREL,A    5K>k»; 

20    REM    (THIS    SIMPLY    SETS    UP    MEMORY    FOR    LOADREL . B) 

30    NUMBERGFPAGES=:1.  :REH    CHANGE    THIS    AS    NEEDED 

40    SIZE=::2565kNUMBER0FPAGES 

:l.0  0  REM  )K)k:k  see  COMPUTE!  *19  ^s^: 

110  LET  LGMEM==7'13;MEML0W-^12S 

120    LADDR^-PEEFCU.0MEM)  UIADDR-PELK(LOMEMtl  ) 

129    REM    —    LINE    130    ENSURES    THAT    IK    tiiYTES    STARTS    ON    PAGE    BOUNDARY 

13  0    IF    LADDROO    THEN    LADDR=Hn  HADDR^^^^HADDR-tl 

mH    ADDR^H..ADDR+2565KHADDR 

1!:;0    ADnR=::ADDR-(-8IZE 

1 6  0    H  A  D  D  R  ----^  I N  T  ( A  [)  D  F  V  2  5  6  )  :  I...  A  D  D  R  =•-=  h.  D  D  F^  ■-  2  S  6  x  H  A  D  [)  F^ 

170    POKE    LOMEMfLADDRiPOKE    LOMEM+1 ,  IIADDR 

ISO    POKE    MEHLOW,.  LADDRIPOKE    MEMLGWtlJIADDR  i  RUN    "D  i  LOADREL  ,  E" 

Program  3:  LOADREL.B 

10  0  REM  »;:«?«  THIS  IS  LOADREL.B  ^»i^ 

110  REM 

120  REM  THIS  PROGRAM  DOES  THE  hCTUAL  RELOCATABLE  LOAD 

13  0  REM 

l''{0  DIM  TEMP$(:lO) 

ISO  NUME;;E"RnFPAGES-i;REn  ADJUST  ID  SAME  AS  LOADREL.A 

20  0  REM  AGAIN.  GEE  COMPUTE!  119 

210  LET  L0MEM==743;MEML0VJ^^^120 

220  P 0 K E  L 0 MEM,  P E £■  K  C  M E! M L 0 ^-J )  ;  I"' OK E  L 0 M l~: M  + 1  , 1"' E E K  (  M E M L 0 W  +  J. ) 

30  0  REM  RPACE  IS  THE  MEMORY  PAGE  WHERE  WE  RELOCATE  TO 

310  R F' A G E: ^■■■■- f ■•  E E F( ( M E M I... 0 \^Hi)- N U M Ei; E f< O F P A G E S 

330  REM  OBUIOUSLY,  THIS  VALUE  SHOULD  MATCH  THE  MEMORY 

S'iO  REM  RESERVED  li!  '  LOADRELl .  3AV ' 

350  ADDR=::RPAGE!K256:RrM  STARTING  ADDR  OF  LOAD 


ginners,  particularly  kids.  Because 
1  like  it. 

Why  one-byte  variable 
numbers?  Again,  tor  speed  and 
compactness.  Use  variable  names 
as  long  as  you  like:  only  tbe  first  us- 
age eats  up  any  more  memory 
than  a  single-character,  undeci- 
pherable variable  name.  There  are 
disadvantages:  a  maximum  of  128 
different  variables,  a  mispelled 
variable  name  can't  be  purged 
^from  the  variable  table  uithoiit 
LISTing  and  reENTERing.  On  the 
whole,  a  very  wise  choice  (/  can  say 
that,  it's  one  part  of  Atari  BASIC  1 
didn't  design  into  the  specs). 

Why  intern;ilized  numeric 
constants?  For  speed.  Period. 
Well,  maybe  for  simplicity  at  run- 
time, but  that's  only  a  mavbe.  Did 
you  know  thai  nimieric  constants 
in  Atari  BASIC  actually  execute 
faster  than  variables?  Write  a  timing 
loop  and  prove  it  to  yomself. 

Why  line  length  bytes?  Do  you 
need  them  if  you  have  statement 
length  bytes?  We  don't  iirrd  them, 
but  they  make  line  skipping  (as 
when  we  are  exectiting  a  GOTO) 
faster  than  it  would  be  if  we  had  to 
skip  individual  statements. 

Why  statemcni  length  bytes? 
Given  that  you  have  line  length 
bytes?  This  one  is  harder  to  an- 
swer, because  it  has  to  do  with  how 
we  execute  GOSUB/RETURN, 
etc.  1  will  leave  that  for  a  later 
article,  but  I  will  note  that  these 
bytes  were  extremely  helpful 
when  it  came  to  implementing  the 
IF...ELSE...ENDIF  structure  in 
BASIC  A -H. 

Why  decimal  floating  point? 
Because  it  is  easier  foi-  beginners 
to  understand  (try  PRINT 
I23T23-123  using  Applesoft)  and 
is  obviously  preferable  lor  monev 
applications.  AcUially.  oiu'  decimal 
add  and  subtract  are  faster  than 
the  corresponding  binarv  rou- 
tines. Admittedly,  nuiltiply  suffers 
a  little  and  divide  siifTers  a  lot. 

Why  different  kinds  of  left 
parentheses?  V-V'/o' .several  kinds  of 
equal  sign?  Because  it's  easy  for 
the  syntaxer  to  see  the  different 


The  aliens  have  swept  undefeated  across  the  galaxy. 
You  are  an  enterprising  star  ship  captain  —  the  final 
defender  of  space. 

As  the  aliens  attack,  you  launch  a  deadly  barrage  of 
missiles.  Flankers  swoop  down  on  your  position. 
Maneuvering  to  avoid  the  counterattack,  you 
disintegrate  their  ships  with  your  magnetic  repellers. 

As  your  skill  improves,  the  attackers  increase  their 
speed.  And  as  a  last  resort,  the  aliens  use  their 
invisible  ray  to  slow  the  speed  of  your  missile 
launcher. 

GALACTIC  CHASE  provides  Atari  owners  with  the 
most  challenging  one  or  two  person  game  in  the 
galaxy. 


® 


A 

ATARI 

Atari  400/800  16k,  Written  in  machine  language.  Requires  joysticks. 

Payment:  Personal  Checks — allow  three  weeks  to  clear. 

American  Express,  Visa,  &  Master  Charge — incJudeall  numbers  on  card.  Please  include  phone 
number  with  atl  orders.  24.95  *or  cassette  or  29.95  for  disk  plus  2.00  shipping,  Michigan 
residents  add  4%. 

Check  the  dealer  in  your  locaJ  galaxy.  Dealer  inquiries  encouraged. 

CaJaaic  Chase  ©  1981  Stedek  Software. 


SPECTRUM 

COMPUTERS 


DepI  C. 

26618  Southfield 

Lathrup  Village,  Mi.  48076 

(313)  559-5252 


84 


COMPUTEI 


Februaiv1982  Issue  21 


400 

4:L0 
420 

45  0 
5  0  0 
510 
520 
53  0 
540 


f:;e:m  * 

F:;EM  * 
REM  »! 
FINTER 
REM  )K 

re:  AD 

IF-  TE 

IF  te: 
POKE 
A  DDR 


GE 

"d; 

TEHP 
MP$( 
MP$  i 
ADDR 
ADDR 


T 

5(c;k 
DA 
FIE 

:U 
»y 

■11. 


«•;<(**  >K  5K  5t!  X )« )K  XOK  SC  *;  )K  Xf  )K  )K  X  X  X 

THE    RELOCATION    DATA    x 
■*«  w  iti  >tc>K  ;*:*;>;  xoK  s  s;  ^c  ic  K  »:  )K  s; ;« »< 
TA.REL" 
ENTER    BRINGS    US    F-IERE 


xmw- 


1  )=="-'■    TFIEN    END 

l)<>"a<"    THEN    PDF(E    ADDR  ,  VAL  (  TEMPiP- )  ! 

A  I-  ( T  I::  M  p  *  ( 2 ) )  ■*•  R  f  :■  A  G  K I R  e:  h  r  e:  l  0  c  A  t  :i;  0  N 

tnOTO    510 


goto    550 


Program  4:  DATA.REL 

52  0    IF    TEMP$(lfl)=-' 

1000  REM  LINE  1010 

1010  JUNK=-a)SR(RPAG£: 

1020  END 

1000  0  DATA 

10010  DATA 

10  020  DATA 

10030  DATA 

1O04O  DATA 

10  050  DATA 

10  060  DATA 

10  070  DATA 

lOneO  DATA 

10  090  DATA 

1010  0  DATA 

10110  DATA 

10120  DATA 

1013  0  DATA 

10140  DATA 

lOl'JiO  DATA 

10  160  DATA 

1017  0  DATA 

10180  DATA 

10190  DATA 

1020  0  DATA 

10210  DATA 


#- ii  /  '"^  ■'*j  ^  ^\ 
I.,  o  t  ^..  .^S  rf_  +  i... 

26,3,169 
28 t 3, 169 
231.2,16 
2  0  5.1 6  £U 
!«0  ,111,;*: 
»cO,76,74 
43 .8,240 
172,230, 
141.206, 
1,96,1£59 
206,»cO,l 
*  0,160,1 
0.145,22 
176,7,16 
32,iai,)K 
*0,20B,4 
96,173,2 
225,96,1 
206,20  6, 
0,0,- 


=■"    THEN  1000 

IS  USED  TO  INITIALIZE  THE  Mi  DRIVER 

!t<25i>  +  4B) 

9 , 26,3, 240 , 1 0 , 201 , 77 , 240 

32,232,208,242,96,169,77,1:57 

<■  59  ,  157  ,  27  ,  3  ,  169  ,  «0  ,  157 

,0,1!:,7,29,3,169,0,141 

9,>K1,141  ,232,2,96,10  4,24  0 

1 04.104,136, 2  08 , 251 , 240 , 197 , 76 

0.146,;kO,133,»:0,159,*0,73 

,>*:0,160,l,96,139,74f3 

, 13, 173, 229, 2, 141, 21 0,*0 

2  ,  136  ,  140  ,  21 1  ,  »iO  ,  173  ,  21  0  ,  x<0 

«a  .  173,211  ,:*:0  ,  141 ,  207  ,  *0  ,  160 

,74,3,41,8,240,12,173 

41, 208, *0, 173, 2 07,* 0,141, 20 9 

,  96,  72,  32, 181,  iKO,  104,160 

4  ,  32  ,  192  ,  *0  ,  96  ,  32  ,  160  ,  SCO 

0, 0,177,224,32, 192,*G,96 

0,  205,  203,  »iO,  208,  9,204,  20  9 

,160,1 36 ,56,96,160,1, 24 

06,  *;0, 133,  224,  172, 207,*  0,132 

72, 2 0  6,* 0,208, 3, 20 6, 207, *0 

XO, 160, 1,96,0 ,0,0,0 


Program  5: 

0000 


Graphics  Routines,  Equates 


E:456 

0342 

0344 

0348 

034A 

034B 

0003 

OOOC 

0007 

ooot;: 

0011 

0012 

0004 

OOOB 

1010 
1020 
1030 
1040 
1050 
10  60 
1070 
1080 
1090 
1100 
1110 
1120 
1130 
1140 
1150 
1160 
1170 

iiao 

1190 
120  0 

1210 
1220 
1230 


.PAGE    "Equeites.    etc 


CIO  EQUATES 


cin 

ICCOM 
ICE:  ADR 
ICEiLEN 
ICAUXl 
ICAUX2 

♦ 

CORN 

CCLOSE 

CGBINR 

CPBINR 

CDRAW 

CFILL 

4 

OPIH 

DP  OUT 


*E456 

$342 

*344 

$348 

$34A 

$34B 


:ll 
IB 


Call  OS  thru  here 
COMMand  to  CIO  in  loCb 
E:  ij  f  f  e  r  o  r  f  1 1  e  n  a  m  e  A  D  d  R  e  =>  j 
Duffer  LENcjth 
AiJXill. isry  byte  \-    1 
AUXillisr^  b':jte  i^  2 


4 
8 


EQUATES  used  b^:i  the 


CoMMand 

OPeN 

Com n and 

CL08E 

CoMMand 

Get  BINar>:f  Record 

CoMMand 

F-'  I..1  L  B I N  3  T'  ^j  F^  e  c  a  r  d 

CoMMand 

DRAWto 

Corinand 

FILL  (riot  used  in 

Open  foT 

INput 

OPeri  far 

OUTput 

S 

%    driver 

and 

this  deMo) 


kinds  of  equal  signs  in,  for  exam- 
ple, LET  A  =  B  =  C  +  D$  =  E$. 

Sure,  we  tould  tell  the  difference 
at  run  time  from  tonlexl.  but  why 
should  we  when  it's  so  easy  to 
distinguish  between  a  45  and  a  34 
and  a  52? 

Why  doesn't  Atari  BASIC: 
have  string  arrays?  I  reallv  didn't 
want  to  put  this  question  in,  but  I 
wanted  to  save  myself  the  letters 
and  threatening  phone  calls.  The 
best  reason  is  that  it  was  a  choice 
of  string  arrays  or  syntax  ciietking. 
(Obviouslv,  I  like  the  choice.)  Other 
rationales  include  the  fact  that 
Atari  was  aiming  for  the  educa- 
tional market,  vvhere  the  HP2()()() 
(with  72-character,  Atari-style 
strings)  was  the  dc  facto  standard. 

My  personal  favorite  reasons 
are  twofold:  (1)  anything  you  can 
do  with  string  arrays  you  can  also 
do  with  long  strings  {adniiiiedly, 
sometimes  with  a  little  more  dili'i- 
culty)  though  the  reverse  is  defi- 
nitely not  true;  and  (2)  string 
arrays  are  unique  to  DKC7  Mic  ro- 
sofl/???  BASIC  and  do  not  appear 
in  that  form  in  am  other  of  the 
more  popular  languages  (e.g., 
FORTRAN,  COBOC  PASCAL, 
C,  FORTH,  etc.).  Techniques 
learned  witli  long  strings  are 
portable  to  these  other  languages: 
techniques  involving  string  arravs 
are,  at  best,  difficult  to  transfer. 
Finally,  long  strings  as  imple- 
mented on  (he  /Vtari  ha\e  serine 
unique  advantages  not  imme- 
diately obvious.  I  hope  to  explore 
some  of  these  advantages  in  futine 
columns. 


TOLL  FREE 

Subscription 

Order  Line 

800-345-8112 

In  PA  800-662-2444 


SWIFTY  SOFTWARE 

TOP  RATED 
PRODUCTS  FOR  ATARI 


yjS*''  HARDWARE 
^  DISK  SENTRY '" 

<>^  An  intell«ggnl  aiglial  jcussory  lor  your  ATARI  610  DIsK 
s^  Drive,  lets  you  setKllvsEy  mllo  data  lo  both  $ide$  Qt  single 
ildad  jnu  write  protected  disks.  DISK  SENTflV  unnot  harm 
your  drive  or  disks .  Installs  and  removes  easily:  ng  soldering 
required.  DISK  SENTRy's  LED  signals  sysKm  status,  prtven- 
ilnj  accidental  erasure  of  data.  DISK  SENTBY  is  a  conver>ienl 
push  button  wrtte-protect  averride  which  car  pay  tor  itself 
with  your  first  box  ot  liisks.  (39,96  +  (2.50  Shipping  and 
f^an{Jllng. 

ARCADE  QAMES 

24K  Disk;  16K  Cassetle;  Joystick  rBquirBd 
Add  lliesB  popular  HIGH  RESOLUTiON,  REAL-TIME, 
ANIMATED  games  to  your  software  arsenal.  Get 
FAST  ACTION  and  FULL  SOUND  GRAPHICS  tttat  take 
advantage  ol  tlie  unique  features  ot  your  ATARI.  En- 
joy challenge  that  requires  strategy  and  skiii. 

SfACE CHASE ^" 

Fty  against  inleliigen!  invader  clones.  Arm  yourself  with 
Nuclear  Defense  Charges  and  play  wi!h  or  wiihoul  Defense 
St^ields.  Enjoy  this  actlcn-oacked  muhicotof  space  Odyssey. 
Displays  top  score,  number  of  planets  saved  and  numtief  of 
gaiajles  conquered.  S14,95cassBtta:  S19.9idlsk 

TIMEBOMB^" 

Meet  the  cfiallenga  ot  this  fast  moving  anirrutad  race  against 
lime,  enemy  aircraft  and  enemy  txmbs  as  you  attempt  to 
disarm  llmebombs  set  to  explode  ammurtition  depots.  Avo4d 
aircraft  of  varving  sizes  and  speeds  —  and  their  bombs. 
Choose  one  ot  ten  Day  or  Night  Missions.  Use  from  one  to  four 
Joysticks.  Any  number  can  play;  top  players  listed  on 
scoreboard.  $t4. 95 cassette;  St9. 95  disk 

AND  MORE  BAMES 

jjJi^TmVIATntKT* 

Unlimited  fun  and  lots  ol  laughs  lor  one  or  two  ptayen>.  Five 
hundred  questions  and  two  IhOiisand  rrvultiple  cttoJce  answers 
are  supplied  on  tf>e  master  diskette  A  powerful  italaflle  han- 
dling program  allows  creaton  of  your  own  trivia  questions  and 
answers.  Features  Include:  Player  Missile  Graphics,  user  or 
random  selection  of  subjects  and  numerous  comical  answer 
choices.  This  DISK  ONLY  oackage  cam«s  complete  with  user 
inslniclions.  An  IncredlOie  value  for  only  S29.95.  Requires 
3:k  and  disk  drhii. 

Ji\  FUH  "it"  BAMES  t1™ 
<^  WOnOGAMES.  POSSIBLE  and  LEAPFROG  giving  you  hours  of 
tun,  cnallenge  and  entertainment  WOnOGAMES.  nvo  games 
in  one,  contains  GUESSIT  -  a  deductive  alphaDeilc  reasoning 
game  for  one  or  two  players  and  WORDJUMBLE  -  a  multiple 
word  de5cramt)llng  pu;;le  with  play-on-word  hints  and 
mystery  answers.  Instructions  show  now  you  can  substitute 
your  own  words.  Use  POSSIBLE  to  nelp  descramble  word 
juml}lB  pu72lDs  or  to  creata  your  own.  All  letler/numtMr  com- 
binations  or  permutations  of  Input  are  printed  to  screen  or  op- 
tional printer.  LEAPFROG  Is  a  Chlnese-Cf^ecker  type  lumping 
gan^  in  whlcf^  you  try  to  poshion  two  sets  of  anirnaied  jum- 
ping frogs  in  a  mlnlmjm  numt)er  ol  moves  I6K  Cassette 
(19,95;  24K  Disk  J24.95.  Disk  version  ot  GUESSIT  works 
with  VOTftAX  Type  "n"  TALK.  A  real  crowd  pleaser. 

CDMINfiSOONISpm  Shuffle  AdniHurt  Sedti  TM 
Real-time  Space  Flight  Simulations 

.     PERSONAL  DATA  MANAGEMENT 
ylf  FILE-IT  J  T* 

Contains  all  the  programs  in  FILE-IT  plus  five  additional  file 
handling  and  linanclai  programs.  Financial  entry  and  report 
generator  programs  CfaatB  i  powerhjl  personal  accounting 
system  while  two  additional  utility  programs  provide  random 
access  updating  and  user  controlled  record  seiection.  Sub- 
hies  may  be  created,  merged  and  sorted  by  any  field.  A  mon- 
ttily  Bar  Graph  program  generates  a  visual  picture  ol  hnanclal 
data  on  the  screen  and/or  printer.  Supports  up  to  lour  disk 
drives  as  well  as  tl^e  AXLOK  MMDISK-  Minimum 
requirements  are  24t(,  1  disk  drive  and  an  BO  column  printer 
Extensive  documentation,  supplied  in  a  ring  binder,  provides 
clear  instruction  along  with  a  tutorial  on  computer  tiiing. 
S49.9S  1-  $3  2i  Shipping  and  ttandllng.  AXIDN  MMDISK 
notredulred. 


FILE-IT  ™ 

Use  Ihls  ttan  up  dilahtse  ij^tem  to  tile  and  manage  persortal 
Inlormatlon  and  data.  Create,  sort,  store  and  manipulate  In- 
formalion  such  as  appointment  calendars,  address,  or 
telephone  data,  credh  or  charge  records,  stock  Investments, 
medical  or  prescription  intonrtation,  hobby,  coupon  or  other 
types  of  collection  information.  ..and  more.  With  printer  you 
get  t  or  2  across  mailing  labels,  disk  jacket  inventory  covers 
and  neatly  written  copy  ot  all  your  data  files.  Comes  witn  well 
documented  instruction  manual  explaining  basics  of  computer 
filing.  Fast  and  easy  to  use  Holds  over  300  records  in  4DK. 
Requires  minimum  ot  Z4K  and  t  disk  drive.  Printer  optional. 
S34.9S(DiskOnly| 

COMING  SOONI  Th<  Fintlly  Flundir^*' 
AN  easy  to  use  financial  package. 

UTILITIES 

OISKETTE  INVrNTOHT  STSTEW  '" 

US4    Ihls    system    [G    gain    control    of    your    eKpanding 

disk/program  inventory.  Quickly  get  locations  of  single  or 

mulllple  copies  of  your  programs  and  all  your  valuable  hies 

An  Invaluable  tool,  this  system  is  easy  and  convenient  to  use 

and  to  update.  i4K  disk  system  required,  SZ4,95  Printer 

suggested. 

SIlKIFrf  UTILITIES 

A  valuable  coilechon  of  programming  uttilliee  tor  the  ATARI 
programmer.  This  DISK  ONLY  package  includes  el  of 
Programming  Aids  I  and  addttfonal  programs  designed  to 
make  programming  hme  more  ettlcleni.  Special  MENU 
program  runs  both  saved  and  listed  programs.  REM 
REMOVER  eliminates  REM  statements  so  programs  take  less 
core  and  run  faster,  PHINT  825  and  PaiNTEPS  custom  print 
programs  prepare  condensed,  indented  and  paginated 
program  iisllngs  on  your  ATARI  B25  or  EPSON  MX-SO  prin- 
let. Listings  identity  machine  code,  graphics  and  Inverse 
video  characters,  VARIABLE  LIST  and  VARIABLE  PRINT 
programs  help  you  prepare  alpnabetlzed  annotated  list  ot  your 
program  variables.  A  delete  lines  utilitv  provides  convenience 
of  line  deletion  while  a  DOS  CALLER  gives  you  convenient  ac- 
cess to  many  DOS  utilities  while  your  program  is  In  core. 
Dlskllst  prepares  disk  jacket  labels.  Many  ot  these  programs 
work  coresident  with  each  other  and  with  your  program.  Dtsk 
Drive  and  minimum  of  24K  renuired.  J29-95 

PDDGIUMMIKO  AIDS  PACKABE I  ^'* 

Four  utility  programs  to  help  increase  programming  effkiency 
and  learn  more  alMut  your  computer,  REffUMBER  handles 
references  and  even  variables.  Generates  Dlagnoshc  Tat>les 
lor  programming  error  detection.  PROGRAM  DECODER. 
DECIMAL  to  BCD  and  BCD  to  DECIMAL  programs  give  you  a 
practical  way  of  studying  Internal  program  representahon  and 
ATARI  number-conversion  procedures  Comes  with  com- 
prehensive user's  manual.  16K  cassette  St4,9S:  24K  disk 
$1995 

swiny  oATAimn  t" 

High  Quality  Smart  Tenninal  Communtcations  program.  Easy 
to  use  Muiti-Dphon,  Menu  Driven,  Full  performance 
uploading/downloading.  Works  In  Duplex  or  Simplex  modes 
sjpporting  ASCII  and  ATASCII  transmission.  Printer  Dump, 
Screen  Dump  and  Disk  Search  options.  Use  as  remote  ter- 
minal. Send/receive  and  store  programs  and  data  files.  Saves 
connect  lime  charges  whh  commercial  services.  Requires 
24K  RAM,  610  Disk  Drive,  850  interface  or  equivalent,  830 or 
other  3M  Baud  modem ,  (Pnnler  ophonal)  S39,95 

y  swinv  TACK  master™ 
<i^  An  accurate  disk  ipeed  dUgnntie  utility  program  designed 
specifically  lor  ATARI  810  Disk  Drives,  Provides  easy-to-read 
visual  indication  ot  the  speed  of  any  drive  connected  to  jrour 
system.  Using  liie  accuracy  ot  machine  language,  DISK  l)OC- 
TOn  displays  five  RPM  readings  per  second  with  a  working 
tachometer  accurate  to  V>  RPM.  Allows  you  to  adjust  your 
drivels)  to  factory  specs  easily  and  at  any  time  in  the  con- 
venience ot  your  own  i^om«.  Comes  complete  whh  easy  to 
follow user'smsnual-  S29-95 

^s  ACCESSORIES 

■^   VINYL  DUST  COVERS 

Hew,  Qlove  soft,  vinyl  dust  covers  for  the  ATARI  800  Com- 
puter, the  400  Computer  and  the  825  Printer.  Custom  made 
from  heavy  duty  upholstery  grade  vinyl,  these  covers  com- 
Dlelely  cover  the  top  and  sides  ol  your  valuable  equipment.  Do 
not  confuse  them  with  cheap,  flimsy  plashc  covers  available 
elsewhere.  Accessory  ports  and  other  Input/output  plugs  are 
exposed  for  convenience  of  use.  Available  In  either  black  or 
■■ATARI"  beige,  ATARI  400:  (9.95;  ATARI  800:  SIO  95: 
ATARI  825:  J 1 0  95.  Specify  model  and  color.  Any  two  covers 
lor  S18-95-  Please  include  S2.50  lor  Shipping  and  Handling. 

lend  chKk  Of  menty  order  li: 

SWIFTY  SOFTWARE,  INC. 

S4  BROAD  HOLLOW  ROAD 

MELVILLE,  H.Y.117« 


(S16)  SA9-9U1 
ildifi'     


N,Y,  ReildifitiidilTViK  tiltltM 
eiiHl  ler  tree  cetilogui  i)ul«  erderi  and  c.o.d.'i  tccepttd 
©1981.  1982 Swltly  Software,  Inc. 
MTE:  ATAHI*   Is  3  registered  trademark  ot  Atari  Inc..  a 
Warner  Communications  Company  and  all  references  to 
ATAflt'  should  be  so  noted. 


86 


COMPUTE) 


februarv,  1982,  Issue  21 


0  05^ 
02FE;: 


OOFF 
0  1  0  0 

Rrasphics  roi. 
The  actual  r 

0000 


0000 

OAAO  00 

0661  53 

0  66Z  3 A 

0663  00 


12.^0  ;    the  UBLANK  routines 

1250  ;■ 

1260    HORIZONTAL    -    $55 

1270    VEIRTICAL    -       $5^ 

1280    DRAWCHLOR    ■■■■'-    $2Fr;: 

1290    COLOR  0    =•-  i'ZCJi 

130  0    : 

1310    I    rt:i.scel].ati^j 

1320    : 

1330    LOW  ==  $Fr 

13^10    HIGH         '-^■-  *100 

1350    ; 

.itines    for    CGHPUTE !     #21 
•outinc-js 


136D  .PACiE    "The    actual    routines" 

1370  ; 

1380  ;  First,  set  the  location  and  sone  Miscellaneous 

1390  :     RAM  usaqe 

l^iOO  t 

1^10         *=:    *660 

mzQ  : 

1'I30  SAVECOLOR    .liJYTE    0  t     wher-&    COLOR    is    saved 

1-4^0  : 


1^50  SNAMi:   .BYTE 


the;  filenaM©  for  open 


1-160 

1470 

1480 

1490 

150  0 

1510 

1520 

1530 

0  66^1 

48 

1540 

0  665 

A26  0 

1550 

0  667 

A90C 

156  0 

0669 

9D4203 

1570 

0  66C 

2056E'1 

158  0 

159  0 
1 6  0  n 

0  66r 

A26  0 

::,o;iO 

0671 

A903 

1620 

0  673 

904203 

1630 

0  676 

A9A1 

1640 

0  67B 

9D44  0  3 

165(1 

067B 

A90  6 

1660 

067D 

9D'1503 

1A7  0 

168  0 

169  0 

170  0 
1710 

0  68  0 

68 

172  0 

0  6B1 

9D4B0  3 

1730 
1740 

0  63'^ 

29F0 

1750 

0686 

4910 

1760 
1770 
1780 

0680 

0900 

1790 

0  6BA 

9D4A0  3 

laoo 

0680 

2056E4 

laio 

;    GRAPHICS    Q 

I    E  N  T  R  Y  I    A  -  r  e  q    cont  a  x  ri  s  q  r  b  p  l-i  i  c:  's   n  d  d  e    '  ni ' 

I       E  X I T  ♦    Y  -  r  e  q   h  a  s    c  o  m  p  1  e  t  i  a  n    s  t  a  t  u  s 

+ 
■fr 

GRAPHICS 

P'HA  J  save     'q' 

LDX       *6x<lilO  :  file    6 

LDA       fCCLOSE 

STA       ICCQM.X 

t.JSR      CIO  ;  First,    we    must    close    file    *6 

;     (we    iqnare    any    error's  froM    the    close) 


t    a^ciiri*     rile    A 

;    w ti    w  i  ].  1    o p e |-i    L h  1  -;;    '  f  lie' 


LDX  IhSKiMO 

LDA  ilCOPM 

ST A  ICCOH.X 

LDA  #SNAHE£LOW 

STA  ICEADRoX   ;  we  usa  the  file  I'lar-ie  "St" 

LDA  *  shame::/ HIGH 

STA  ICBADR  +  l.X  ',    \:>h    pointiny  to  it 

t  all  is  set  up  for  OPEN,  now 

:  we  tell  CIO  (and  S:)  what  kind  of  open 

F''l-A  ;  our  saved  '  i:r'  graphics  Mode 

STA   ICAUX2.X  ;  is  oiven  to  "S ; 
I     (note  that  St  icinores  the  upper  bits  of  AUX2) 

AND   f$FO  J  now  we  get  Just  the  upper  bits 

EOR   I $10  ;  and  flip  bit  4 

t     (Read  the  te;ct.   s;  expects  this  bit  inverted 

t  fvofi    what  nor  Mai  BASIC  usaqe  is.) 

ORA   :B-*OC  ;  allow  read  end  write  access  (for  CID) 

STA   ICAUXl.X  ;  M<3ke  CIO  and  SJ  happ^ 

J3R   CIO  :  and  dc  the  OPEN  of  S: 


KNSWEn-MAN 

FOR  USE  WITH  YOUR 
ATARI  400/800.  PLUGS 
INTO  THE  GAME  PORTS. 
GBEAT  FOR  EDUCATION 
OR  FOR  FUN.  COMES  WITH 
SOFTWARE.  GUM  METAL 
GRAY  CASE. 


$29.95 


LIFELINE  COMM.  INC. 

3107  PICO  BL.#1. 

SANTA  MONICA,  CA. 

90405.  (313)828-0489. 


Dealers  - 

Reserve  your 

copies  of 

COMPUTE  s  first 

Atori  and 
PET/CBM  books 

today,  Coll 
919-275-9809 
for  ordering 
•   information, 


mj^ 


Beware  as  you  enter  the  Crypts  Of  Terror.  No  one  has 

survived  this  horror.  Only  your  unrelenting  nerve  and 
determination  will  drive  you  deeper  into  the  unknown. 

Find  what  lurks  in  these  ancient  crypts!! 

At  last  we  have  found  an  adventure  with  full  graphics,  sound  and 
intrigue  for  your  ATARI  400/800  computer. 

•  CRYPTS  OF  TERROR  is  the  first  adventure  game  that  was 
completely  designed  for  the  Atari  computers  only.  The  graphics 
are  the  finest  available  using  the  full  potential  of  the  Atari. 

A. 

ATARI 

Atari  800/400  16K  requires  joysticks. 

Payment:  Personal  Checks  -  allow  three  weeks  for  check 

to  clear. 
American  Express,  VISA,  MasterCard  -  include  all  numbers  on 
card.  Please  include  phone  number  with  all  orders. 
Orders  from  USA  $29.95  (US  funds) 
Orders  from  Canada  $39.95  (Canadian  funds) 
Plus  $2.00  for  shipping. 

Ontario  residents  add  7%  R.S.T. 

Check  your  local  computer  deafer  for  Crypts  Of  Terror. 

Dealer  inquiries  encouraged. 


INHOME 
SOFTWARE 

PH.  1-416-961-2760 


1 560  Yonge  St. 
P.O.  Box  10 
Toronto 

Ontario  Canada 
M4T1Z7 


88 


COMPUTEI 


February,  1982.  Issue  21 


0<'.9  0  AO 


0691 


8D60  06 

6Q 


069^,  B655 
0697  8556 
0699  8'i5^ 
069B  60 


069C 
069F 

06A1 
06  A3 
06A6 
06A8 
06AE! 
0  6AE 
06B1 
06B'1 


209506 

A260 

A90FJ 

9D'<^203 

A90n 

90^803 

9D't903 

AD60Q6 

2  056E-^ 

60 


06E;:5  2  09506 
06B8  A26  0 
06BA  A907 
06BC  9D^203 


1920 

1B30 

■UHO 

1850 

1860 

1870 

1880 

1890 

1900 

1910 

1920 

1930 

19^0 

1950 

1960 

1970 

1980 

1990 

2000 

2010 

2020 

2030 

20-10 

205D 
2060 

2070 

2080 

2090 

210  0 
2110 
2120 
2130 
21^0 
2150 
2160 
2170 
2180 
2190 
22  0  0 
2210 
2220 
2230 
22-10 
2250 
2260 
2270 
2280 
2290 
230  0 
2310 
2320 
2330 
23^10 
235  0 
2360 
2370 
2380 
2390 
2-10  0 
2'^10 

2^30 
2'^10 


RTS 


COLOR  c 


enter:  Color 
EXITt  Unchenqed 


COLOR 


STA   SAUECOLOR 

RT8 


;  e;;citinq,  wasfi't  it? 


;  POSITION  h,v 

* 
t 

t       ENTER  I  h  (horizontal)  position  in  X»A 

;  registers  (LSE:!,MSEi) 

;  V  (vertical)  position  in  Y-reqister 

;  E  X  X  T  t    n  n  c  h  a  ri  9  e  d 

POSITION 

STY.       RDRIZONTAL 

ST  A       HORIZONTAL+1     ;     rf-ed    the    text 

STY      VE^RTICAL       J    too    siiiple,    rivjht? 

RTS 


PLOT    h,v 

ENTER!  Must  have  done  a  previous  COLOR  call 

XtA,and  Y  registers  -set  as  in  POSITION 


EXITt  Y-re;(;iister  has  comp  !Lijjt ior 


.  t  a  1 1..1  ^ 


PLOT 


;  file  6,  aqain 

I    Connarid  Put  EilNsrhJ  Record 


JSR  POSITION 

LDX  #6»:$10 

LDA  tCF^'BINR 

STA  ICCOM.X 

LDA  to 

STA  ic;blen,x 

STA  ICBLEN+1,X  ;  if  buffer  lenqth  is  zero.., 

LDA  SAUECOLOR  I    then  CPBINR  puts  one  char  froM  A-req 

JSR  CIO        :  and  this  is  how  we  PLOT 

RTS 


t  LOCATE  h,v,c 

* 

;  enter:    X.A.and    Y    reqisters    -set    up    as    in    POSITION 

:  exit:    A—eqister    has    the    LGCATEd    color 

t  Y-reqister    has    the    ci:)Mpletion    code 


LOCATE 


JSR  POSITION 

LDX  #6»;$10     ;  file  6 

LDA  *CGEINR    I  CoMMand  Get  BINsr^i  Record 

STA  ICCOHfX 


February,  1982.  Issue  21 


COMPUTEI 


89 


06EiF  A900 

06C1  90-^803 

O&CJ  90-^903 

06C7  2(ir>6E'^ 

06CA  60 


2-^50 
Z-'tAO 
2A7Q 
2-^80 
2-190 
2500 
2510 
2520 


LDA  40 

SBTA  ICBLEN.X 

ST  A  ICBLENt-l,X     !     ;i.f    Guffei-    LENqth    is    zero, 

JSR  CIO  *     ti'ieri    th&    chiarstcter     is    retur-ned    in    A 

F*TS 


:  DF^AWTO  h,v 


2560 


ENTERS  Must  have  done  a  previous  PLOT 

X.  At  arid  Y  reqisters  as  in  F'OSITXON 


06CE:: 
06CE 
06D1 
06D'» 
06D6 
06D8 
06DB 
06DD 
06E0 
06EZ 
06E5 
06E8 


209506 

AD60t)6 

8DFE()2 

A260 

A911 

90^2  03 

A90C 

9D4An3 

A900 

9D4B0  3 

2056E^ 

60 


06E9  OA 
0  6EA  OA 
06EB  OA 
06EC  OA 
06ED  900-^02 
0  6F-0  98 
0  6F-1  29  OE 
0  6F3  18 
a&f^    7DC402 
06F7  9DC;402 
06FA  60 

06FE 


2580 
2590 
2600 
2610 
2620 
2630 
2640 
2650 
2660 
2670 
2680 
2690 
270  0 
27  10 
2720 
2730 
27-^0 
2750 
2760 
2770 
278(1 
2790 
2800 
2810 
2820 
2830 
28''}  0 
2850 
2860 
2870 
2880 
2090 
2900 
2910 
2920 
2930 
29-40 
2950 
2960 


exit: 


■■  T'  K q  i  <■:; t e r'  h b s    i:M3 ni:)  I  &  t  i  o n  c o d e 


drawtd 


JSR  FTJBITION 

LDA  SA'v'ECOLOR 

8TA  DRAWCOLOR 

LDX  #6**10 

LDA  # CD RAH 

STA  ICCPM,X 

LDA  fi'OC 

STA  ICAUXltX 

LDA  to 

STA  :i:CAUX2,X 

JSR  CIO 
RTS 


wiiere  DFilAWTO  is;-;pects  i. ts  color 
r  i  1 1^  6  .  t  ♦  o i"i c e  M o r  e 
just,  a  CQMMai'jd  to  "SI" 


■)     insur  arice 

?     .  ♦  .  yusivgntKed    to    work 
5    do    the    <3cti..i3l    DRAWTO 


*     +     **4A*     + 


i 

■» 

;    SET  COL  OR    r,hue,lijM 

♦ 

t 

t  ENTER';  X-reqister  has  color  reyister  'r' 

;  A  -  V  e  q  i  s  t  (sv    h  a  s  h  u  e 

;  Y-reqister    has    Irj^iviancG 

!  exit;  (undefined) 

SETCOLOR 

ASL  A 

ASL  A 

ASL  A 

ASL  A 

STA  CGLOROfX 

TYA 

AND  *$0E 

CLC 

ADC  COLOR 0,X 

STA  COLOR 0,X 

RTS 


we  need  hue  )k  16 

save  it  heve  Pcir  a  nonce 

anl'ii  luminance  bits  that  watte^r 

ei"id    o'r    tlie    rionce 

and    UFiiLANFC    will    move    this    to    hai'dware 


Graphics  routines  for 
The  actual  routines 


tEND 
COMPUTE!  #21 


E456 

CID 

OS'tA 

ICAUXl 

0  0  07 

CGEINR 

0  0  04 

OPIN 

0  2FB 

DRAWCOLOR 

0  66  0 

SAUECOLDR 

0695 

POSITION 

06E9 

SETCOLOR 

==0342 
==034B 
=  0  0  OB 

=  01108 

-0  2C4 

0  661 

0  69C 


ICCOM 

ICAUX2 

CPBINR 

OPOUT 

COLOR 0 

E5NAME 

PLOT 


0344 

ICBADR 

=  0348 

ICBLEN 

0  0  03 

CORN 

=  0  0  OC 

CCLOSE 

0  011 

CDRAW 

==0  012 

CFILL 

0  0  55 

HORIZONTAL 

=  0  0  54 

VERTICAL 

OOFF 

LOW 

=  0  1  0  0 

HIGH 

0664 

GRAPF1ICS 

0691 

COLOR 

06B5 

LOCATE 

06CB 

DRAWTO 

90 


COMFUTEI 


februarv,1V82.  Issue  21 


P/M  Graphics 
Made  Easy 


T.  Sak  S.  Meier 
Baltimore,  MD 


Many  people  have  called  the  Atari's  graphics  capa- 
bilities its  best  feature,  especially  the  player-missile 
graphics.  We  won't  argue,  but  how  many  of  you 
have  backed  away  because  it  looks  too  difficult  to 
handle  in  BASIC  or  you  simply  are  not  satisified 
with  the  execution  speeds  which  you  are  able  to 
achieve? 

Well,  no  more  excuses!  We've  got  a  machine 
language  subroutine  that  you  can  use  with  BASIC 
to  achieve  exciting  graphics  performance  without  a 
lot  of  muss  and  fuss.  As  a  matter  of  fact,  you  make 
only  one  setup  call  to  the  subroutine  and  then 
forget  it!  And  we  promise  you  need  know  nothing 
about  machine  language.  Just  a  few  POKEs  and 
you'll  have  your  players  dancing  around  the  tele- 
vision screen. 

You  Dont  Need  To  Know  Machine  Language 

There  have  been  a  number  of  very  helpful  articles 
published  describing  the  essential  player-missile 
graphic  information.  Chris  Crawford's  description 
in  COMPlfTE!  #8  is  particularly  noteworthy.  We're 
going  to  assume  that  you  are  familiar  with  the 
fundamentals,  but  we'll  review  highlights  as  they're 
required. 

A  feature  of  the  Atari  with  which  you  may  not 
be  familiar  is  its  "interrupt"  mechanism  and  how 
you  can  let  it  move  your  players  for  you  at  machine 
language  speed  —  without  the  overhead  of  calling 
it  from  your  BASIC  program.  Before  we  explore 
this  useful  feature,  let's  take  a  quick  refresher 
course  on  interrupts. 

As  you  know,  the  Atari  keeps  itself  pretty  busy 
doing  its  "housekeeping"  chores  even  while  it  is 
interpreting  your  BASIC  program.  Among  other 
things,  the  Atari  must  maintain  the  steady  delivery 
of  information  to  your  television  set,  allowing  it  to 
paint  a  constantly  up-to-date  picture  of  the  display 
data.  Multiple,  concurrent  activities  are  performed 
by  allowing  one  particular  activity  to  periodically 
interrupt  another. 

The  traditional  analogy  is  that  of  a  busy  busi- 
ness executive  who,  while  engaged  in  a  meeting 
with  an  associate,  is  interrupted  by  a  telephone  call. 
The  ringing  phone  signals  the  interrupt;  the  exec- 
utive "checkpoints"  his  meeting  and  answers  the 
phone.  After  disposing  of  the  call,  the  executive 


resumes  his  meeting  at  the  point  of  interruption. 

A  similar  circumstance  occurs  each  time  a 
complete  picture  is  painted  by  your  television  set. 
The  television's  electron  beam  paints  the  picture 
by  sweeping  horizontal  rows  across  the  picture 
tube  beginning  in  the  upper  left  hand  corner  and 
ending  in  the  lower  right.  The  beam  is  turned  off 
when  it  reaches  the  lower  right  corner  and  is  re- 
turned to  its  upper  left  starting  posidon.  This 
return  trip  is  essentially  a  vertical  positioning  move- 
ment so  this  period  when  the  beam  is  turned  off  is 
known  as  the  vertical  blank  time. 

Move  During  Vertical  Bianks 

The  onset  of  the  vertical  blank  cycle  serves  as  an 
opportunity  for  the  Atari's  antic  chip  to  signal  an 
interrupt,  the  vertical  blank  or  VBLANK  interrupt. 
The  operating  system  uses  this  occasion  to  perform 
some  of  its  "housekeeping"  duties.  Fortunately,  the 
operating  system  designers  allow  us  to  include  a 
machine  language  subroutine  which  can  be  executed 
as  one  of  these  tasks. 

The  machine  language  vertical  blank  interrupt 
player  movement  subroutine  described  here  is 
called  VBLANK  PM  and  it  allows  you  to  simply 
POKE  the  next  x  and  y  coordinate  at  which  your 
player  is  to  be  displayed.  There  is  no  need  to  re- 
peatedly call  the  subroutine  from  BASIC  via  the 
USR  function.  The  subroutine  will  be  automatically 
executed  dtiring  the  next  vertical  blank  period.  It 
is  possible  to  move  the  players  every  time  a  new 
screen  is  painted  on  the  television  -  and  that's  60 
times  a  second! 

You  may  recall  from  other  articles  that  an 
appropriate  POKE  to  location  53248  (and  the 
three  memory  locations  following)  permits  you  to 
position  players  zero  through  three  horizontally 
along  the  x-axis.  It's  not  quite  as  easy  to  position 
the  players  vertically  along  the  y-axis.  Not  until  now! 

The  VBLANK  PM  subroutine  takes  care  to 
move  the  players  in  both  directions.  Movements 
along  the  vertical  axis  involve  "erasing"  and  re- 
writing the  player  in  the  new  position.  VBLANK 
PM  does  this  for  you,  automatically.  There  are  a 
few  things  which  you  must  do  for  VBLANK  PM 
however. 

First,  you  must  get  the  VBLANK  PM  machine 
language  subroutine  into  memory  and  notify  the 
operating  system  that  is  to  be  included  as  one  of 
the  "housekeeping"  tasks  to  be  performed  as  a  part 
of  servicing  the  vertical  blank  interrupt.  Next,  it's 
up  to  you  to  draw  your  players  and  tell  VBLANK 
PM  how  tall  they  are.  After  initialization,  VBLANK 
PM  looks  after  the  positioning  of  your  players  until 
either  a  warm  start  (pressing  SYSTEM  RESET)  or 
a  cold  start  (power-off,  power-on  sequence)  is 
performed. 


-  Santa  Cfu2  Educational  Software  *  Tricky  Tutorials  *  Santa  Cruz  Educational  SoHware  *  Tricky  Tutorials  *  Santa  Cruz  Educational  Software  *  Tricky 

I     ATARI  (tm)  GRAPHICS  AND  SOUND  MADE  EASY!     I 


n 


SANTA  CRUZ  EDUCATIONAL  SOFTWARE  HAS  WRITTEN  A  SERIES  OF  AFFORDABLE  PROGRAMS  THAT  DEMONSTRATES  MANY  OF  THE 
SPECfAL  "TRICKS"  THAT  ONLYTHE  ATARI  400/800  COMPUTER  IS  CAPABLE  OF  DOING.  WE  OFFER  EVERYTHING  FROM  A  PROGRAM 
THAT  DOES  FANTASTIC  HIGH  RESOLUTION  GRAPHICS  TO  ONE  THAT  ACTUALLY  DIALS  YOUR  PHONE 


a     •••••••••••*•••••••**■*•*■A••*••*•■A••*•**•^^*^^****^»r^^*^^^.^^.^^.^^^^r**^^***^lr^^     |. 


c 
e 


MASTER  MEMORY  MAP(lm)  -  This  is  really  Itie  key  to  us- 
ing the  ATARI'S  capabililies.  We  slart  oul  by  explaining 
how  to  PEEK  and  POKE  values  inio  memory  so  thai  even 
new  programmers  can  use  Ihis.  Then;  we  give  you  over  15 
pages  ot  Ihe  memory  localions  that  are  Ihe  most  useful-  The 
inlormalion  is  condensed  from  both  !he  ATARI'S  Operating 
Syslem  Manual  and  various  articles  and  programs  It  is.  of 
course,  useful  even  for  experienced  programmers  as  a 
reference  Also,  we  highly  suggest  that  dealers  olter  inis 
Memory  Map  to  customers  who  repuest  to  be  lold  how  lo 
use  Ihe  power  o(  Ihe  mactiine.  We  guarantee  it  will  answer 
many  of  the  questions  you  have  about  Ihe  machine.  S5.95 


TRICKY  TUTORIALS(tm) 

#1:  DISPLAY  LISTS  -  This  program  teaches  ycu  how  lo 
alter  the  program  in  Ihe  ATARI  that  controls  the  format  of 
the  screen.  For  example:  when  you  say  graphics  8  Ihe 
machine  responds  with  a  large  graphics  8  area  at  the  top  ol 
the  screen  and  a  small  lexl  area  at  Ihe  botlom.  Now,  you 
will  be  able  lo  mix  the  various  modes  on  Ihe  screen  at  the 
same  lime.  Just  think  how  nice  your  programs  could  lool< 
wilh  a  mix  of  large  and  small  lexl.  and  both  high  and  low 
resolution  graphics,  this  program  has  mahy  examples  plus 
does  all  of  the  difficult  caluculations!  S14.95 

«:  HOHIZONTAL/VERITCAL  SCROLLING  -  The  inform- 
ation you  put  on  Ihe  screen,  either  graphics  or  lexl.  can  he 
moved  up.  down  or  sideways.  This  can  make  some  nice  el- 
lects.  You  could  move  only  the  text  on  Ihe  bottom  half  ol  the 
screen  or  perhaps  create  a  map  and  then  move  smoolhly 
over  il  by  using  the  joystick.  S14.95 

#3:  PAGE  FLIPPING  -  Normally  you  have  lo  redraw  Ihe 
screen  every  time  you  change  the  piclure  or  lexl.  Now  you 
can  learn  how  lo  have  the  computer  draw  the  next  page  you 
warn  10  see  while  you  are  slill  looking  at  Ihe  previous  page 
then  flip  to  il  instantly.  You  won't  see  il  being  drawn,  soa 
complicated  picture  can  seem  to  just  appear.  Depending  pn 
your  memory  siie  and  how  complicated  Itie  piclure.  you 
could  Hip  between  many  pages,  thus  allowing  animation  or 
other  special  effects  wilh  your  lexl.  SI 4, 99 

M;  BASICS  OF  ANIMATION  -  Shows  you  how  to  animate 
simple  shapes  using  Ihe  PRINT  and  PLOT  commands,  and 
also  has  nice  little  PLAYER/MISSILE  Graphics  demo  to 
learn  This  would  be  an  excellent  way  lo  start  making  your 
programs  come  alive  on  the  screen ,  Recommended  tor  new 
owners,  S14.95 

#5  PLAYER  MISSILE  GRAPHICS  -  This  complex  subiecl  js 
demonstrated  by  slatting  wilh  simple  examples,  and 
building  up  to  a  complete  game  and  also  an  animated 
businesschartonmultiplBpageslAsalways.lhecompuler 
does  most  ot  the  calculations  Requires  32K  disk  or  tape 
and  costs  SZ9.95 


jj  16;  SOUND  —  From  explaining  how  to  create  single  notes. 

S  lo  demonstrating  complex  four  channel  sound  effects,  this 

%  newest  tutorial  is  great.  Even  those  experienced  wilh 

J2  ATARI'S  sound  capabilities  will  find  the  menu  ol  sound  ef- 

g  feels  a  needed  reference  that  can  be  used  whenever  you 

S  are  in  Ihe  need  of  a  special  sound  for  your  programs 

g  Everyone  will  learn  something  new'  Written  by  Jerry 

=  White.  S14.95 


Tricky  Tutorials  (except  #5)  require  16K 
memory  for  cassette  orders  and  24K  for  disk. 
Ttie  price  is  SI 4.95  each.  You  may  order 
1,2,3.  &  4  for  $49,951  All  six  in  a  colorful 
binder  cost  SS9.9S. 


C3 


THEGRAPHICS  MACHINEII  -  Turn  your  computer  into  an 
incredible  graphics  tool  wilh  advanced  commands  like  cir- 
cle. Qox.  fill,  polygon,  line.  help,  etc  3  colors m  graphics 8 
with  instant  text'"  Create  colorful  business  charts  or 
beaulilul  drawings  and  then  save  or  relrieue  them  from 
disk  in  5  SECOfJOS  YES,  its  that  fast  Needs  all  48K 
disk,  and  cosis  SI9.9S 


MINI-WORO  PROCESSOR  -  This  is  for  those  ot  you  who 
have  a  pnnler.  Put  donl  want  lo  spend  SlOO  or  more  lor  a 
lancy  word  processor  II  is  suitable  for  simple  editing  ol 
text,  accepts  most  control  characters  for  your  printer  and 
text  IS  stored  on  disk  lor  easy  relrieval  Holds  2'h  typed 
pages  at  a  lime  Requires  32K.  disk  or  tape  ST4.95 

BOB'S  BUSINESS  -  \A  small  business  type  programs  lor 
home  or  oMice.  all  chosen  Irom  a  nice  menu  Supports 
prinled  output  169  sectors  ol  output  require  t6K  tape,  or 
32Kdisk  S14.95 


KID'S  HI  -  Includes  the  lollowing  li  TREASURE  - 
search  lor  Ihe  lost  treasure  while  trying  to  keep  Irom  falling 
into  the  sea  Nice  graphics  il  you  find  if ,  JlDiALOGUE  - 
talk  back  to  the  computer  about  four  subiects.  3i  MATH 
OUIZ  -  Nice  musical  and  graphical  rewards  tor  good 
scores  Parents  inpu!  the  level  of  OiHiculty 

KID'S  #Z  -  A  spelling  pui;.  a  scrabble  '  type  game  and 
a  version  of  Touch  with  Ihe  computer  giving  all  Ihe  direc- 
tions' Both  Kids  programs  require  16K  tape  or  24K  disk 
and  cost  S14. 95  each 

MINI-DATABASE/DIALER  ~  This  unique  new  program 
stores  and  edits  up  to  fl  lines  Ol  intormalion  such  as  name 
address,  and  phone  numbers,  or  messages,  inventories  or 
anything  you  want  II  has  the  usual  sort  search  and  print 
options,  but  It  also  has  an  unusual  lealure  If  your  files  m. 
elude  phone  numbers  and  you  have  a  loucfi-tone  phone 
Ihe  program  will  DIAL  THE  PHONE  NUfVlBERS  FOB  YOU' 
This  IS  perlect  lor  those  who  make  a  lot  ot  calls  like 
salesmen  teens,  or  those  frying  to  get  through  lo  busy 
numbers  tacts  as  an  aulo-'rediaierj  if  is  also  a  lot  ot  fun  to 
use  Requires  16K  cassette  or  J'tK  disk  and  costs  S24.95 

FONETONE  -  For  those  who  only  want  to  store  name  and 
phone  numbers  and  have  Ihe  dialer  leature  as  above  we 
offer  this  reduced  version  Same  memory  requirements, 
bul  only  costs  SI 4, 95.  Oonl  lorgel  you  must  have  a  touch- 
lone  ptione 

PLAYER  PIANO  -  Turns  your  keyboard  into  a  mini-piano 
and  more  Multiple  menu  options  provide  the  ability  lo 
create  your  own  songs,  save  or  load  data  liles  using 
cassette  or  diskelie ,  lix  or  change  any  ot  up  to  -100  notes  in 
memory,  and  play  all  or  part  ot  a  song  The  screen  displays 
Ihe  keyboard  and  indicates  each  key  as  it  is  played  Irom  a 
data  file  or  the  notes  you  type  You  don't  have  to  be  a  musi- 
cian lo  en|oy  ihis  educational  and  entertaining  program 
Requires  JJK  cassette  or  32K  disk  S14.95 

BOWLERS  DATABASE  -  Provides  Ihe  league  bowler  wilh 
Ihe  ability  lo  record  and  retrieve  bowling  scores  providing 
permanent  records  The  data  may  then  be  analyzed  by  the 
program  and  displayed  or  printed  in  summary  or  detail 
form  Data  may  be  stored  on  cassetle  or  diskette  and  up- 
dated quickly  and  efficiently  The  program  proivdes  such 
inlormalion  as  highest  and  lowest  scores  by  individual 
game  Ifirst.  second  and  third  games  throughout  the 
season),  high  and  low  series  current  average,  and  more 
The  program  listing  and  documentation  provided  are  a 
lutonal  on  ATARI  basic  and  record  keeeping  Requires  16K 
tor  cassette  or  24KJor  disk  S14.95 

By  the  lime  you  read  Ihis  all  computers  1400/8001  being 
produced  should  have  the  tabled  GTIA  chips  included 
ATARI  service  may  upgrade  older  computers  call  and  ask 
Ill's  easy  to  do  yourseltl  We  have  one  and  the  im 
provemenls  that  graphics  modes  9  10  and  n  ofler  are 
great"  To  help  you  figure  out  what  to  do  with  tlie  new 
modes  a  new  Tricky  Tutorial  will  be  ottered  in  March  on 
Modes  9  lo  1 1  Either  give  us  a  call  or  wnte  around  that- 
time 


•  ••••••••••••••••••••*■•••••••••*•••**•■*•*■ 


SEE  YOUR  LOCAL  DEALER 

OR 

ORDER  FROM: 


SANTA  CRUZ  EDUCATIONAL  SOFTWARE 

54Z5  Jigger  Dr.,  Soquel,  CA  95073 

C.O.D.  Orders  call  (408)  476-4901 

'Include  S2.00  postage  (S.75  for  Memory  Map) 

'In  CallfDrnia,  include  6.5%  tax 


Santa  Cruz  Educational  Software  *  Tricky  Tutorials  *  Santa  Cru2  Educational  Software  *  Tricky  Tutorials  *  Santa  Cruz  Educational  Software '  Tricky 


92 


COMPUTII 


Febmaiy  1982.  Issue  21 


Progra/n  1  is  an  example  of  the  initialization 
and  use  of  the  VBLANK  PM  subroutine.  This 
program  causes  VBLANK  PM  to  be  loaded  and 
initialized  and  players  zero  and  one  to  be  drawn 
and  then  moved  about  the  television  screen  in  a 
random  pattern.  The  players  are  male  and  female 
gender  symbols  which  the  program  "dances" 
around  the  screen. 

Lines  100  through  200  are  the  main  program; 
we'll  save  an  explanation  of  these  lines  until  after 
you've  gained  some  insight  into  the  initialization 
subprogram  contained  in  lines  1000  through  1110. 
The  VBLANK  PM  machine  language  subroutine  is 
expressed  in  the  DATA  statements  numbered 
2000  through  2100.  Finally,  lines  3000  through 
3020  supply  a  description  of  the  two  players  used 
in  this  example. 

The  first  task  is  to  load  VBLANK  PM  into 
page  six  of  memory.  Page  six  is  locations  1536 
through  1791  {hexadecimal  600  through  6FF)  and 
has  been  left  available  by  Atari's  software  designers 
for  applications  such  as  this  one.  These  256  bytes 
of  memory  are  not  disturbed  by  BASIC  or  DOS; 
however,  a  cold  start  does  cause  page  six  to  be 
cleared  to  zeroes.  Line  1010  causes  the  VBLANK 
PM  to  be  read  and  POKEd  into  memory.  Line 
1020  clears  a  few  locations  used  by  the  subroutine; 
this  statement  can  be  omitted  if  you  are  sure 
that  page  six  has  not  been  altered  since  the  last 
cold  start. 

We're  going  to  employ  the  Atari's  antic  chip 
direct  memory  access  (DMA)  facility  to  transfer 
graphics  information  from  memory  to  the  television 
using  single  line  resolution.  (You  might  want  to 
reread  Chris  Crawford's  article  or  just  "trust  us  on 
this  one!")  This  means  that  we  must  allocate  2K 
(2048)  bytes  of  memory  for  the  storage  of  players. 
In  line  1030  we  obtain  the  page  number  of  RAM- 
TOP,  deduct  16  pages,  and  call  the  result  the  base 
of  the  required  2K  byte  allocation. 

Memory  Allocation 

Why  16  pages?  Well,  first  consider  that  2K  bytes 
are  eight  pages  (a  page  contains  256  bytes)  and 
that,  depending  on  the  graphics  mode  (i.e., 
GRAPHICS  0  through  GRAPHICS  8),  you  must 
allow  sufficient  space  at  the  top  of  RAM  to  contain 
the  display  list  and  screen  data.  Incidentally,  the 
player-missile  2K  byte  allocation  must  begin  at  an 
address  which  is  a  multiple  of  2048;  we  call  this 
starting  address  PMBASE. 

One  more  cautionary  note:  you  will  have  to 
allow  more  than  16  pages  between  PMBASE  and 
RAMTOP  if  you  are  using  graphics  modes  six 
through  eight.  FVed  Pinho's  article  in  COMPUTE! 
#16  provides  greater  detail  in  this  area. 

Figure  1  depicts  the  2K  byte  memory  allocation. 


Figure  1. 


currently 

not 

used 


player  zero 


player  one 


player  two 


player  three 


PMBASE 


+  1024 
+  1280 
+  1536 
+  1792 


Remember,  we  didn't  design  this  scheme,  Atari 
did,  and  we're  not  sure  why  but  there  is  a  consider- 
able amount  of  unused  space  involved.  You  can 
use  the  lower,  unused  bytes  for  your  own  purposes 
without  disturbing  anything,  if  you  like.  We're  onlv 
going  to  use  the  upper  1 K  bytes. 

Player  zero  occupies  PMBASE -t-  1024  through 
PMBASE -I- 1279;  player  one  is  situated  in  locations 
PMBASE -I- 1280  through  PMBASE -I- 1535,  and  so 
on  for  players  two  and  three.  Line  1040  clears  any 
residual  data  -  if  you're  in  a  hurry  and  are  sure 
that  this  area  is  already  clear  (i.e.,  following  a  cold 
start),  you  won't  need  line  1040. 

Lines  1050  and  1060  are  used  to  draw  players 
zero  and  one.  VBLANK  PM  expects  the  players  to 
be  drawn  such  that  their  top  line  is  initially  placed 
at  the  beginning  of  the  individual  player's  storage 
area.  The  player  can  be  as  tall  as  you  like  up  to  255 
lines;  of  course,  you  will  never  see  all  of  a  player 
which  is  that  tall  on  the  screen  at  the  same  time! 

Next  you  can  see  that  we've  taken  advantage 
of  the  Atari's  special  memory  locations  for  some 
functions.  You  establish  the  players'  colors  with  a 
POKE  into  locations  704  through  707  for  players 
zero  thrijugh  three,  respectively.  Line  1070  is  used 
to  set  th(?  colors  and  assumes  that  you've  set  the 
variables  PCOLO,  PCOLl,  PCOL2,  and  PCOL3 
already. 

Line  1 080  establishes  the  positioning  addresses 
which  you  will  be  using  later  to  signal  player  move- 
ments using  only  POKEs,  PLX  and  PLY  are  the 
locations  POKEd  to  establish  the  next  x  and  y 
position  of  player  zero.  A  POKE  into  location 
PLX -I-  1  and  PLY -I-  1  accomplishes  the  same  thing 
for  player  one,  and  so  forth  for  players  two  and 
three.  PLL  (and  PEL -I-  1,  PLLH-2,  and  PEL +  3)  are 
POKEd  to  inform  VBLANK  PM  of  the  length  (or 
height)  of  each  player. 

Line  1090  initializes  the  remaining  control 
parameters.  A  62  is  POKEd  into  location  559  to  set 
the  single  line  player-missile  resolution  graphics;  a 


Febfuorv.  1932.  Issue  21 


COMPUTEI 


93 


one  placed  into  location  623  establishes  the  player/ 
playfield  priorities  giving  the  players  priority  over 
the  playfield.  (Yon  can  change  this  to  suit  your 
purposes,if  you  wish.)  Location  1788  is  in  VBLANK 
PM  and  is  POKEd  with  the  number  of  the  first 
page  containing  player-missile  data.  Locations 
53277  and  54279  are  used  to  switch  on  the  DMA 
graphics  data  transfer  facility  and  to  tell  the 
ANTIC  chip  where  in  memory  to  find  the  player 
graphics  data. 

Wrapping  Up  The  Loose  Ends 

You're  almost  ready  to  go!  A  subroutine  call  to 
VBLANK  PM  from  line  1 100  allows  VBLANK  PM 
to  notify  the  operating  system  of  both  his  presence 
and  his  desire  to  be  automatically  invoked  as  a  part 
of  the  vertical  blank  interrupt  process.  This  is  the 
only  time  in  which  your  BASIC  program  must 
explicidy  call  VBLANK  PM. 

Okay,  to  wrap  up  loose  ends,  let's  take  a  quick 
look  at  the  main  program  -  Unes  100  through  200. 
Line  100  turns  off  the  cursor,  clears  the  screen, 
and  provides  a  black  background  so  that  we  can 
readily  see  the  players. 

Line  110  sets  the  players'  colors  before  the 
VBLANK  PM  initialization  subprogram  is  executed. 
You  know  how  to  set  the  colors,  right?  Multiply  the 
color  number  by  16  and  add  the  desired  intensity  — 
the  color  and  intensity  numbers  are  the  same  as 
those  used  in  the  SETCOLOR  command.  Line  120 
assures  the  VBLANK  PM  is  launched. 

Line  130  illustrates  the  manner  in  which  you 
pass  instructions  to  VBLANK  PM.  Here  we  are 
telling  VBLANK  PM  that  both  players  are  eight 
lines  tall.  You  can  change  this  parameter  at  any 
time  —  we  have  a  little  surprise  for  you  later  about 
why  you  might  want  to  change  this  parameter. 

Lines  140  and  150  establish  the  initial  television 
screen  positions  of  players  zero  and  one,  respec- 
tively. A  word  about  the  available  values  for  the  x 
and  y  coordinates  might  be  helpful  as  not  all  x  and 
y  values  will  result  in  the  player  being  displayed. 
There  are  255  x  positions  with  only  160  of  these 
appearing  acro.ss  the  television  screen  beginning 
with  an  x  value  of  48. 

Similarly,  there  are  255  y  positions  with  192  of 
these  visible  on  the  screen  beginning  with  32  at 
the  top.  (These  x  and  y  values  may  vary  slightly 
depending  on  the  adjustment  of  your  television 
receiver.)  VBLANK  PM  assumes  that  you  are 
referring  to  the  upper  left  hand  corner  of  your 
player  whenever  you  POKE  new  x  and  y  coordinate 
values. 

Lines  17D  and  180  illustrate  the  use  of  the 
pseudo- random  number  function  to  determine  the 
next  set  of  x  and  y  coordinates.  Line  190  provides 
a  small  delay  between  player  movements.  Delete 


the  FOR  and  NEXT  statements  if  you  want  to  see 

how  fast  -  and  eas^'—  it  is  to  move  players. 

Well  who  said  player-missile  graphics  had  to 
be  anything  but  fun?!  Give  VBLANK  PM  a  try  in 
one  of  your  current  programs  to  add  a  little  zip;  or 
try  it  in  your  next  graphics  project. 

Oh,  we  almost  forgot  that  we  promised  you  a 
surprise  regarding  why  you  might  want  to  change 
the  height  of  a  player.  VBLANK  PM  has  a  few 
more  features  which  allow  you  to  animate  the 
movements  of  your  players  -  but  more  about  this 
next  time! 


\m  POKE  752L1  =  PRIHT  Cif:$(  i£5 ) ■  ShTCOLOR  2..y..0 

lit)  PCOL0=£lfa-F"JOLl=j6:iSt-1  color  of  plaaer-s 

12i^i  GiJ-'l'B  IQ^iM^REri    initialize  vb  routine 

i  30  P&'£  PLL ..  8  ■  FvKE  PLL+ 1.8:  REH  f1  aaer '  s  te  i  E.ht 

140  POKE  PLM..18S:P0KE  PL'M82  ^  Rtfl  pUaer 
Q's  initii^   position 

150  PKE  PLK+1.163:PUKE  PLY+L72-Rt!1  ditto  pls.aer  1 

160  REM  let  plarEr?  'iince^ 

17y  vWE  ?U-.M&Si)tl5'?HB-Pv¥£  "!-'L'-i';Rt£i(6>-^-13i+32 

180  PKE  PL>;+!.-FJCi';9)%159+4t-::pi>:;E  PLV+L 

150  FOP   1=1  TO  rS^HEXT  I^GuTO  17Q 

200  EfCt 

1000  REM   TrilTIfiLIZE  USLANK  PM  SISR 

1010  FOR  1=1536  iO  i7&S:REHD  h^POKI  L-S^hEftT  I 

IfiSO  FOR   1=1774  TO  1787 ^Pi^X  LO^ttKI  I 

1030  Ftl=PE£K<  lSe)-lb:pMSHSE=256tPt1 

1040  PCS  I=PhBR-5E+1023  TO  P!1BftSE+2047:P0 

KE  I,0iNE;;T  I 

1050  FOR_I=PMBhSE+1025  TO  PMBPSE+iOiS^RE 

Pu  ft^i-'OKt  I,:A:HhXT  I 

10t.6  FOR:  I=P!'1£:hSE+12c;1  TO  PffipSE+i29&:RE 

hD  R^FOKE  I.. R: NEXT  I 

1070  POKE  784..pi:OL0:F''>:E  7t5..PL-GLl  ^FtiKE 

706..  F'C0L2  ■■  POKE  78? ,-  KiL3 

1080  FlX=5i248:pLY=17S0:PLL=1784 

1090  POKE  559.&2:P0KE  623.  l_-FuKb  i7S8,.Ki1 

+4  =  POKE  53277..3:p0Kt  54279  ..PM 

1100  X=l!SR(lt96) 

1110  RETURN 

2000  FEt1  v'bl'^.nk  inte*"upt  ro'.itine 

2010  WTr!  1*^.2. 3 :1d'h. 244 •€..•248 .-89 .-56 ..221.. 

240..  b.-240..S3..  14L254.6..  186. 141 

2020  DATA  255-b..l42.-253.6,-24j  i69:0;  ly9.-2 

53..  6.24.- 109  ..252, 6. 133,204,- 133 

2030  DhT  h  286 ..  1 89  ^  2^0  -6.133  j  203  .■  1 7  3 ..  254  .■ 

6. 133. 205  •  ib"5..  24>: .  6..  170  ■  232-.  46..  255 

2040  OATH  6..  144 -.  16..  168..  177 .■  203.- 145 -.  205. 1 

69..  0 .  145..  203-.  136,-  262..  208 .  244,-  76. 37 

2058  rp.Jp  ■^,,  igg - g,  ■, 7'7 , 203 , 1 45 , 255, 169.. ''^^ 

1 45 .  203 .  208 .  202 .  208. 244 ,  1 74 .  £53 . 6 

2060  CftTA   173.254..  6..  157.240.6.  its. 236 .6.. 

240.48, 133-.203.24. 138. 141. 253. S 

2070  [ihTh   109. 255.. 6, 133 ■  284. 24. 173. 253. 6 

..  105. 252. 6. 133.206. 189. 240-6. 133 

28o0  Cttlft  205.  icf9. 24-8.  b,  176. 165. 3. 1  ;'7 .  20 

3 . 1 45  J  2'05 .  2S& .  202 .  208 .  248 .174. 253 ,-  6 

2090  MTr  165.8. 157. 236.6. 2'02.-48.3. 76. 2. 

6. 76 .  98 .  228 .  S .  S.  1 84 . 1 69 

2100  DATA  7.162.6. 168..  0.,' 32.92..  22"5,- 96 

3.000  F£M  Fiiyers  O  fe  1 

3010  [i<jTA  6.-6.8-.  126.195.195.195.,  126 

3020  OhTh   126.155.195-126.24.126.126.24  @ 


94 


COMPUTE* 


FebiuQfV.1'?S2.  Issue  21 


Review: 


Eastern  Front 
(1941) 

Edward  P,  McMahon 
Potomac,  MD 


Eastern  Front  (1941)  by  Chris  Crawford  of  the  Atari 
Staff  is  a  paradigm  for  computer  war  games.  Not  a 
shoot-em-up  type  arcade  game,  it  is  a  corps-level 
historical  simulation.  The  subject  of  this  excellent 
simulation  is  the  first  41  weeks  of  Operation  Bar- 
barossa.  Hitter's  massive  attack  on  Russia  which 
began  on  June  22,  1941. 

Eastern  Front  has  many  features  of  a  well-done 
historical  simulation  wargame:  simultaneous  move- 
ment of  both  players,  supply  rules,  reinforcements 
and  resupply  effects,  and  effects  of  terrain.  There 
is  some  time  pressure  also,  which  is  not  usually 
found  in  simulation  wargames  of  the  board-and- 
counter  variety.  The  computer  (a  worthy  opponent 
playing  the  Russian  side)  thinks  out  its  move  during 
the  vertical  blank  periods  when  you  are  planning 
your  moves.  The  more  time  you  take,  the  better 
will  be  the  computer's  move.  More  on  this  later. 

The  game  starts  immediately  after  booting  in 
(it  is  an  AUTORUN.SYS  file  on  the  disk  version), 
but  first-time  players  don't  immediately  respond. 
They  are  entranced  by  the  graphics  presentation. 
The  piayfield  is  2'/^  screens  horizontally  and  4'/3  in 
the  vertical  dimension  and  is  filled  with  excellent 
redefined  character  sets  —  mountains,  rivers, 
forests,  marshes,  cities  and  coastal  areas.  As  you 
move  your  hollow  square  cursor  to  any  edge  of  the 
screen  window,  the  map  smoothly  fine-scrolls  to 
display  the  correct  part  of  the  piayfield.  The  atten- 
tion to  detail  is  admirable.  The  trees  in  the  forest 
areas  are  different  sizes;  the  rivers  and  coasts  are 
displayed  to  the  highest  possible  resolution.  The 
colors  have  been  carefully  chosen  -  I  have  not 
noticed  any  "bleeding"  between  adjacent  colors  — 
and  dramatically  indicate  the  change  of  seasons. 
The  autumn  season  begins  on  October  5,  1941, 
when  the  green  land  changes  to  a  purple-brown 
mud  color.  (Remember  that  date.  If  you  haven't 
captured  your  objectives,  destroyed  most  of  the 
original  Red  forces,  and  established  a  strong  def- 
ensive position  by  then,  you  are  in  trouble.)  The 
ground  changes  again  to  white  in  winter,  and  the 
rivers  and  marshes  freeze  (blue  to  white)  from 
north  to  south  as  the  weeks  progress.  The  process 
reverses  in  the  spring.  Another  very  nice  detail. 


A  few  words  on  the  history  (History  of  the  Second 
World  War,  Sir  Basil  Liddell  Hart  (ed),  Marshall 
Cavendish  USA,  Ltd.,  1973-1974).  Hider  began 
open  plans  to  invade  Russia  with  discussions  in 
June,  1940.  A  late  spring  offensive  was  planned, 
and  the  first  strategy  (by  Maj.  Gen.  Marcks)  was 


...it  is  a  corps-level 
historical  simulation. 


two  thrusts  —  the  largest  to  Moscow  through 
Smolensk,  the  second  to  Kiev.  These  would  join  in 
a  pincer  movement,  trapping  most  of  the  Red 
Army.  General  Haider  and  the  German  High 
Command  modified  the  Marcks  plan  by  weakening 
the  Kiev  thrust  to  strengthen  the  push  to  Moscow, 
and  added  a  third  line  of  attack  to  Leningrad. 
Three  Army  Groups  were  defined:  Army  Group 
North  (von  Leeb),  Army  Group  Center  (von  Beck), 
and  Army  Group  South  (von  Rundstedt).  Von 
Kleist's  1  Panzergruppe  and  Guderain's  H  Panzer- 
gruppe  were  aimed  north  and  south  of  the  Pripet 
marshes  respectively.  The  General  Staff  and  prob- 
ably Army  Group  leaders  played  out  major  war 
games  in  late  1940,  taking  both  sides  of  the  cam- 
paign. But  early  in  December,  Hitler  made  what 
the  German  Army  War  Diary  calls  "a  substantial 
alteration."  Leningrad  became  the  principal  mil- 
itary target  and  Moscow  was  to  be  taken  afterward. 

The  aim  was  still  rapid  advance  and  encircle- 
ment to  prevent  the  Red  Army  from  escaping  into 
the  interior,  and  the  destruction  of  Russia's  indus- 
trial pov/er  in  the  Ukraine,  in  Leningrad,  and  in 
Moscow.  But  Hitler's  modification  had  the  Army 
Group  Center  waiting  until  Army  Group  North 
achieved  its  more  difficult,  more  distant  objective 
before  going  on  to  Moscow.  The  High  Command 
did  not  argue  successfully  with  Hitler,  and  the 
directive  for  Operation  Barbarossa  was  signed  on 
December  18,  1940. 

On  June  22,  the  longest  day,  the  largest  inva- 
sion in  the  world  began  against  an  army  which  had 
suffered  Stalin's  1937-1939  purges:  three  of  five 
Marshals,  13  of  15  Army  C^ommanders.  57  of  85 
Corps  Commanders  and  more  had  been  shot  or 
disappeared  without  a  trace.  The  German  attacks 
were  devastating  in  the  North  and  Center  (Smo- 
lensk fell  on  July  15,  but  Kiev  held  out  as  a  pocket 
of  resistance  until  late  September).  Nearly  two- 
thirds  of  the  Red  Army's  strength  at  the  outbreak 
of  the  war  was  destroyed.  The  Germans  occupied 
Russia  up  to  a  line  from  Leningrad  to  the  Crimea. 


Februarv.W82.lsiue21 


COMPUrEI 


95 


Estimated  losses  by  the  end  of  1941  for  the  Red 
Army  were  5-7  million  killed  or  wounded,  3-5 
million  P.O.W.,  21,000  tanks  and  33,000  guns 
destroyed,  Russia  fought  back  with  extraordinary 
national  effort,  calling  on  all  its  resources  and 
extensive  Allied  help.  The  Germans  achieved  some 
additional  victories,  but  the  Blitzkrieg  was  blunted 
by  the  vastness  of  Russia,  the  mud  and  the  cold. 

Your  only  hope  of  winning  the  simulation  is  to 
follow  the  suggestions  of  the  author,  Chris  Craw- 
ford, in  the  excellent  user's  manual  which  comes 
with  the  game:  break  through  and  use  the  mobility 
of  the  armored  iniils  to  encircle  the  Russian  corps 
from  behind,  and  concentrate  forces  by  pushing 
your  infantry  as  fast  as  possible  to  attack  and  elimi- 
nate pockets  of  enemy  tmits.  These  are  the  classical 
BHtzkrieg  tactics.  But,  before  the  autumn  mud 
stops  your  panzers,  form  a  defensive  Mne  using 
terrain  (rivers  and  cities)  to  your  advantage.  Fall 
back  in  order  during  the  winter  counterattacks. 

The  game  is  well  documented,  but  the  ma- 
thematical rules  of  combat  and  supply  are  not 
given.  The  user  interface  is  well  designed,  so  the 
game  is  almost  entirely  playable  from  the  joystick 
alone  (three  keys  are  needed:  START,  OPTION, 
and  SPACE  BAR).  The  only  feature  which  1  find 
seriously  lacking  is  the  ability  to  save  a  game  and 
restart  it,  Tiie  game  takes  two  or  three  hoins  to 
play  (more,  if  you  want  to  keep  a  record  of  what 
you  are  doing)  and  I  find  it  difficult  to  come  up 
with  an  uninterrupted  block  of  time  like  that. 
Moreover,  I  can't  study  different  moves  for  a  given 
situation,  but  perhaps  that's  good.  The  unknowns 
can't  be  resolved,  so  the  game  keeps  my  interest. 
There  is  randomness  in  the  combat  and  supply 
rules  (a  good  feature)  so  a  tactic  which  works  today 
may  not  work  tomorrow.  Another  reason  wh\ 
replaying  a  tactic  may  not  give  meaningful  results 
was  mentioned  earlier:  the  compiUer  works  on  its 
move  while  you  are  entering  yours.  The  computer 
selects  a  move  for  each  of  its  units  and,  as  time  is 
available,  iteratively  improves  each  move.  This  is 
the  feature  of  the  game  in  which  Crawford  lakes 
the  most  pride. 

Crawford  states  that  he  uses  only  75%  of  the 
Atari's  graphics  capabilities.  He  should  know.  He  is 
one  of  Atari's  most  creative  staff  members,  and 
certainly  imderstands  the  machine.  The  way  he 
uses  that  75*%  makes  Eastern  Front  (194]  j  a  show- 
piece and  a  challenge  to  other  program  designers. 
(If  he  ever  uses  100%,  I  think  I'll  sit  and  stare  for  a 
week  or  so.) 

I  am  still  experimenting  with  small,  local  tactics, 
as  hopeless  as  that  may  be.  If  I  ever  get  to  March 
'42  again  (before  2  a.m.).  perhaps  a  late  winter 
thrust  to  push  some  muster  points  farther  west  will 
add  some  victory  points.  Hmmm...  © 


Odds  &  Ends 

Clearing 
Memory 


Charles  Brannon 
Editorial  Assistant 


Before  using  an  area  of  memory  for  storage,  it  is 
often  necessary  to  clear  it  out.  For  example,  a 
GRAPHICS  command  clears  the  screen  by  writing 
zeros  to  all  the  screen  memory.  Since  there  are  no 
BASIC  statements  that  directly  support  player/ 
missile  graphics,  the  memory  used  by  this  facility 
has  to  be  cleared  by  the  programmer,  usually  with 
a  FOR/NEXT  loop. 

ATARI  BASIC  does  not  clear  out  the  old 
values  of  an  array  or  string  when  a  program  is 
RUN,  even  if  there  is  garbage  in  the  memory  used 
by  these  variables.  This  also  necessitates  some  kind 
of  loop  to  clear  out  this  memory. 

The  problem  with  this  is  that  an  array  of  any 
substantial  size  requires  a  long  time  to  clear  out. 
For  strings,  there  is  a  shortcut: 

10  DIM  A$(100) 

20  A$(  1)  =  "  ": A$(100)  =  "  ":  A$(2)  =  A$ 

Line  20  will  "instandy"  fill  A$  with  spaces.  The 
space  in  quotes  can  be  changed  in  order  to  fill  a 
string  with  a  desired  character. 

There  is  a  "quick  and  dirty"  way  to  clear  out 
memory.  This  relies  on  the  previously  mentioned 
GRAPHICS  command.  GRAPHICS 
8  -I-  16:GRAPHICS  0  will  clear  out  about  8K  of 
high  RAM.  If  executed  before  a  DIM  statement, 
this  will  usually  suffice.  Since  most  Player/Missile 
memory  is  in  the  top  of  memory,  the  GRAPHICS 
command  is  definitely  satisfactory.  If  you  don't 
have  8K  of  free  memory,  you'll  gel  an  ERROR- 
147  (Insufficient  RAM  for  GRAPHICS  mode),  in 
which  case  you'll  have  to  use  GR.A.PHIC]S  7-f  16  (or 
lower),  or  resort  to  the  BASIC  clear  loop.  © 


\ferbatim 

flexible  disks 

Call  Free  (800)  235-4137  for 

prices  and  information.  Dealfer 

inquiries  invited.  C.O.D.  and 

charge  cards  accepted. 

PACIFIC 
EXCHANGES 

100  Foothill  Blvd. 

San  Luis  Obispo.  CA  

93401.  !n  Cal.  call 
(800)  592-5935  or 
(805)  543-1037, 


VISA- 


96 


COMPUTEI 


Februorv  1982.  Issue  21 


COMPUTE!  Overview: 


Textwizard 


circles  is  known  as  the  "KISS"  of  knowledge  (Keep 
It  Short  and  Simple).  The  manual  walks  the  user 
through  each  function  in  logical,  explicit  language, 
and  is  itself  an  excellent  example  of  programmed 
learning." 


Textwizard  consists  of  a  copy-  and  write- 
protected  disk  containing  the  program,  an  instruc- 
tion manual,  and  a  reference  card  which  sum- 
marizes all  commands.  All  of  this  is  in  a  luxuriously 
padded  binder. 

Original  purchasers  may  request  a  back-up 
disk  when  the  warranty  card  is  returned  with  a 
$5.00  check.  After  that,  clobbered  discs  can  be 
exchanged  at  the  factory  for  a  $30.00  fee. 

Forewarned,  we  treated  the  disk  with  great 
respect.  What  we  found  was  a  carefully  human- 
engineered  word  processing  system  for  a  personal 
computer.  It  will  not  turn  your  Atari  into  a  $  15,000 
professional  word  processor,  but  many  of  the 
important  differences  between  Textwizard  and  a 
professional  system  are  a  function  of  the  40- 
character  display.  Thus,  it  is  not  reasonable  to 
consider  constructing  large  organizational  charts, 
flow  charts,  or  even  moderately  complex  graphs. 
Tables  of  data  which  span  more  than  40  columns 
are  tortuous  to  create.  Other  features  usually  seen 
in  professional  systems,  including  automatic  hyphe- 
nation, positioning  of  footnotes  at  the  bottom  of  a 
page,  tabular  sorts,  arithmetic  functions  and  repre- 
sentation of  mathematical  symbols  are  not  available 
on  Textwizard. 

The  Manual 

First  impressions  of  the  program  come  from  the 
well  made  and  finished  looseleaf  text  which  accom- 
panies the  program.  Filled  with  56  pages  of  in- 
structions, including  an  index,  the  manual  gives 
the  feeling  that  the  producers  of  this  program  care 
about  quality. 

The  liLslniclioii  Guide  is,  however,  for  one 
panelist,  the  weakest  element  in  the  package.  It  was 
not  carefully  proofread  nor  carefully  tested  with 
nai\e  users.  There  are  simply  too  many  instances 
where  the  user  who  methodically  follows  the  step- 
by-step  instructions  is  left  hanging  with  a  feeling  of 
"Whai  tio  1  do  now?" 

In  contrast  to  the  above,  one  panelist  was 
pleased  with  the  manual:  "The  user's  manual  is  a 
very  good  example  of  what  in  some  educational 


"...the  manual  gives  the 

feeling  that  the 

producers  of  this  program 

care  about  quality." 


Ease  Of  Use 

The  pTogram  uses  the  Atari  DOS  system  and  dis- 
kettes must  be  formatted  before  you  can  store  data 
on  them.  Data  saved  to  disk  appears  to  be  compacted 
prior  to  saving,  thus  increasing  the  amount  of  data 
which  can  be  stored  on  each  disk. 

Tlie  program  is  written  completely  in  machine 
language  and  is  loaded  without  the  left  cartridge  in 
place.  This  increases  the  amount  of  available  me- 
moiy  for  storage  of  the  text.  With  48K  of  memory 
installed  in  the  computer,  there  is  just  over  30K 
left  foi'  text.  Eighteen  K  Bytes  of  program  seems 
somewhat  large,  considering  the  stated  capabilities 
of  the  program;  however,  this  size  would  certainly 
seem  to  take  it  out  of  the  "kid's  toy"  category. 

Tlie  program  boots  quickly  and,  unless  the 
amount  of  text  being  held  is  substantial,  no  loss  of 
speed  is  noticed.  There  is  one  qtiirk  which  appears 
when  the  amount  of  memory  in  use  begins  to  exceed 
5K.  There  is  a  delay  in  the  text's  appearance  on  the 
screen  when  the  inserting  command  is  being  used. 
This  can  be  somewhat  disconcerting  if  the  operator 
is  a  touch  typist  and  is  watching  the  screen.  The 
nice  part  is  that  the  letters  are  all  picked  up  and,  if 
tiie  typing  is  done  accurately,  it  will  all  eventually 
show  up. 

When  first  used,  however,  the  program  appears 
to  lack  features  tbund  in  oclier  word  processors.  The 
program  is  not  menu  dtiven.  Consequently,  a 
nimiber  of  fimctions  such  as  loading,  saving,  disk 
formaiting,  and  drive  #  setting,  require  that  the 
operator  remember  specific  keyboard  sequences. 
Some  of  these  are  quite  lengthy  and  would  be 
more  easily  used  if  they  were  cotitained  on  a  menu. 
The  Atari  full  cursor  movement  feature  is  well 
used;  however,  there  are  no  provisions  for  fast 
single  stroke  movement  from  the  center  of  a  line  to 
either  end  of  the  line.  These  are  not  essential,  but 


February,  1982.  Issue  21 


COMPUTE) 


97 


WARLOCK'S 
REVENGE 


NEW  FROM 


S/nergistic 
Sofr^are 


AN  EXCITING  ATARI*  HIGH-RES  ADVENTURE  GAME 


SYNERGISTIC  SOFTWARE 

5221  120th  Ave.  S.E. 

Bellevue,  Washington  98006 

(206)226-3216 


Over  100  high  resolution  pictures  in  this 
two  disk  adventure,  guide  you  to  treasure  as 
well  as  dangers.  As  you  explore  caverns  and 
castles  you  use  your  various  skills  to  obtain 
the  riches  therein,  while  eluding  the  pitfalls 
and  creatures  that  abound.  You  provide  the 
Atari,  Warlock's  Revenge  provides  the 
challenge  Requires  at  least  a  4()K.  4()QH()(1 
with  Atari  Basic  and  disk.  $35.00 

Available  for  the  Apple  II  Computer 

as  Oldorf's  Revenge 
from  Highlands  Computer  Services 


ATARI*  400/600  are  trademarks  of 
Atari  Computers  Inc. 


RAM 

For  ATARI 
48K  RAM  BOARD  FOR  THE  400 

•  Increases  memory  capacity 

•  Reduces  power  consumption 

•  Reduces  heat 

48K  Board  (4oo)  $299 
32K  Board  (soo  $150 

Intec 

Peripherals 
Corp 

3389  Del.  Rosa  Avenue 
San  Bernardino,  CA  92404 

(714)  864-5269 

ATARI,  400,  800  are  Trademar1<s  of  ATARI.  Inc. 


ATARI  400/800  OWNERS: 
THERE'S  A 

MICROCONNECTION™ 
FOR  YOU!  — 

Now  you  can  direct-connect  to  the 

telephone  with  or  without^ 

the  850™ 

Interface, 

there's  also  a 

serial  port  to 

drive  a  printer, 

optional  autodial  and  autoanswer, 

and   smart  terminal   software! 

Prices  start  at  $199.50  For  more 

details  write  or  phone: 

the  microperipheraf  corporation 


2643A  -  151st  PI.  N.E. 

Redmond,  WA  98052 

(206)881-7544 


98 


COMPUTE! 


Februarv19S2,  Issue  21 


would  speed  editing.  There  is  no  scrolling  ability 
which  tends  to  limit  the  speed  with  which  text  can 
be  ecHted.  Offsetting  this,  to  some  degree,  is  the 
ability  to  move  through  the  text  in  either  direction 
using  a  combination  of  the  OPTION  key  and  the 
cursor  arrow  keys.  The  system  is  friendly.  It  may 
be  conceptualized  as  two  major  programs:  one  is 
for  creating  and  editing  text,  and  one  is  for  printing 
documents.  With  very  few  exceptions,  commands  to 
the  editing  component  involve  only  two  keystrokes. 

Text  formatting  and  printing  functions  utilize 
Atari's  special  keyboard  controls  (i.e.,  OPTION, 
SELECT,  START)  in  conjimction  with  other  key- 
board characters  which,  when  possible,  relate  to 
the  particular  function  or  mode  required.  For 
example,  CTRL  +  T  sends  the  cursor  to  the  top  of 
the  page,  CTRL  +  B  sends  the  cursor  to  the  bottom 
of  the  page;  CTRL  +  M  is  tised  to  Move  text, 
CTRL  +  D  to  Duplicate  text,  CTRL  +  S  for  Search, 
etc.  The  use  of  characters  such  as  BACKSP,  IN- 
SERT and  editing  ARROWS  will  be  familiar  to 
Atari  users  and  greatly  facilitate  operation  —  espe- 
cially for  the  word  processing  beginner. 

One  particular  feature  proved  extremely 
versatile.  Margin  control  is  set,  not  in  inches  or 
character  widths,  but  in  dot  widths.  Although  this 
necessitates  some  computation  by  the  user  (150 
dots  =  approx.  I  in.),  it  allows  "fine  tuning"  when 
formatting  a  document;  some  very  creative  copy 
can  be  produced  with  such  a  tool.  It  would  be  a 
nice  touch,  perhaps,  if  Datasoft  supplied  a  margin 
gtiage  or  ruler  which  translated  dots  into  inches 
and/or  character  widths  as  a  useful  addition  to  the 
Command  Reference  Card  —  which,  in  itself,  is 
very  clear  and  precise. 

One  severe  problem  occurs  with  the  buffer 
operation.  There  is  no  protection  for  information 
stored  in  the  buffer.  Thus,  inadvertent  loss  of  text 
can  and  does  happen  unless  the  operator  takes 
careful  note  of  buffer  use.  It  seems  best  not  to 
store  text  in  the  buffer  for  any  length  of  time,  but 
rather  to  use  the  btiffer  for  simple  movement 
operations  only.  The  lack  of  a  screen  display  for 
print  formatting  requires  that  the  printer  be  used 
each  time  the  operator  wishes  to  see  the  actual 
formatting  of  the  text.  This  can  account  for  a  sig- 
nificant loss  of  time  and  reams  of  paper  being 
generated,  when  the  actual  formatting  on  the  page 
must  be  seen.  One  paneli.st  felt  that  this,  combined 
with  an  inability  to  print  single  pages  of  a  long  text 
file,  proved  to  be  the  most  serious  deficiency  of  the 
program. 

Search,  Merge,  Disk  Functions 

The  search  feature  does  not  work  reliably,  particu- 
larly when  the  string  involves  as  few  as  three  char- 
acters. For  example,  on  two  Model  800  systems  a 


search  for  "he"  (the  string,  h  -I-  e  +  space)  not  only 
correctly  identified  all  occiurences  of  "he, "  but  also 
incorrectly  located  embedded  instances  of  "he"  (as 
in  "wherever")  and.  worse  yet,  totally  inappropriate 
strings  (e.g.,  "Ruth.").  Search/replate  ojjciatioiis 
were  similarly  plagued.  Even  when  it  behaves 
properly,  global  replacement  is  only  semi-automatic: 
each  "old  phra.se"  must  first  be  located:  replacetnent 
with  "new  phrase"  must  then  be  manually  verified. 

Tab  slops  are  preset  to  five  spaces,  and  cannot 
be  altered.  This  makes  the  construction  of  e\en  4-  or 
5-colunm  tables  of  numbers  o\erly  cimibersome. 

Generoily  Good  Fatal  Error  Protection 

It  is  ge!:ierally  \ery  dif  fictilt  for  a  user  to  make  fatal 
errors.  The  exception  to  this  rule  is,  however, 
important.  File  deletion  is  accomplished  !>)■  sinuil- 
taneotisly  pressing  OPTION  D,  followed  by  a  file 
name.  F.ven  though  the  conienis  of  the  file  still 
exist  on  the  disk,  ihcy  arc  thereafter  forever  inac- 
cessible to  the  user.  For  an  operation  with  such 
important  consequences,  it  is  reasonat>le  to  expect 
the  system  to  help  prevent  the  user  from  making 
devastating  mistakes.  Atari  DOS  requires  an  affir- 
mative acknowledge  prior  to  a  file  deletion.  This 
feature  probably  should  have  been  included. 

Text  requiring  no  special  formatting  leatmes 
(pagination;  underlining;  centering;  use  of  super- 
scripts, subscripts,  page  numbers,  boldface,  etc.) 
may  be  printed  to  an  Atari  H25,  Epson  MX80,  or 
Centronics  737  printers  h\  issuing  the  command 
sequence  OPTION  P,  followed  by  the  filename. 
The  print  routine  incorporates  defaults  for  left, 
right,  top,  and  bottom  margins,  ]jroporti()n;il 
spacing,  and  right  margin  juslilication. 

Overriding  any  of  these  defaults,  or  incorpo- 
rating any  of  the  many  special  features,  re<]uires 
the  user  to  embed  a  command  string  within  the 
text  file.  Features  common  to  the  entire  file  (e.g., 
placetrient  of  page  munbers)  are  indicated  on  the 
first  line  in  the  text.  Other  commands  (e.g.,  for 
centering)areembeddedas  they  are  needed.  Unlike 
some  other  word  processors,  Textwizard  does  not 
permit  underlining  on  tlie  Epson  MX-HO.  .Vn  ap- 
proximation to  boldface  type  may  be  made  on  the 
Epson,  but  not  other  printers;  (his  restriction,  loo. 
is  odd  since  Letter  Perfect  can  produce  boldface  on 
all  three  printers.  Generation  of  super.sci  ijits  and 
subscripts  is  easy,  but  the  instructions  fail  lo  mention 
that  it  cannot  be  accomplished  on  ilie  Ep.son, 

Pagination  is  Especiaiiy  Flexible 

.\rabic  numerals  may  be  placed  aiuontatically 
an\  where  on  the  top  oi"  boltoni  lines  of  a  niaini- 
script.  Since  paginaiioii  mav  begin  witii  any  value, 
sections  or  chapters  of  a  manuscript  ma\  be  inde- 
pendenily  prepared. 

A  nice  feature  is  the  option  to  print  text  in 


February,  1982.  Issue  21 


COMPUTEI 


99 


double  columns.  It  is  a  little  tricky  to  set  up  because 
the  columns  will  not  align  evenly  unless  care  is 
taken  when  placing  carriage  returns.  It  was  not 
bothersome,  however,  and,  after  some  experi- 
menting, the  text  printed  very  nicely,  each  column 
having  margin  requirements  pre-selected  by 
the  user. 

On  page  43  the  automatic  page  numbering 
function  is  presented  as  CTRL-I-  (a .  This  combina- 
tion does  not  work.  It  took  a  few  minutes  to  locate 
the  correct  sequence  for  page  numbering;  it  is 
SHIFT -l-@. 

Its  few  disadvantages  considered,  Textwizard 
has  a  number  of  fealines  which  do  set  it  apart 
from  a  simple  text  editor  and  turn  it  into  a  func- 
tional word  processor. 

One  reviewer  argued  that  the  best  single  fea- 
ture of  the  program  is  the  Insert  Text  function. 
Because  of  the  ease  with  which  this  works,  there  is 
little  need  for  a  lot  of  text  moving.  During  this 
mode  of  operation,  the  operator  is  able  to  make 
insertions  anywhere  in  the  text  without  concern 
for  erasure  of  previously  written  text.  In  addition, 
the  screen  border  changes  color  during  this  opera- 
tion, providing  a  constant  reminder  of  the  mode  of 
operation.  Wrap-around  is  maintained  during  the 
insert  phase  and  this  is  a  definite  asset  during  text 
editing.  Indeed,  the  ability  to  wrap-around  text, 
ihus  keeping  the  text  on  the  screen  readable,  is  one 
of  the  really  fhie,  and  well-executed,  features  of 
Textwizard. 

The  use  of  changed  screen  colors  and  borders 
is  a  feature  of  Textwizard,  which  truly  takes  advan- 
tage of  the  versatility  of  the  Atari,  and  helps  to 
bring  to  this  product  an  overall  feeling  of  polish, 
while  giving  the  user  a  very  clear  indication  of  the 
current  mode  of  operation. 

Print  commands  and  formatting  ability  with 
this  program  arc  superb,  if  the  Atari  825  or  Cen- 
tronics 737  printer  is  u.sed  in  conjunction  with  the 
program.  The  ability  to  do  multiple  column  printing 
is  a  great  asset  and  it  is  here  that  Textwizard  dem- 
onstrates a  clear  superiority  over  other  word  pro- 
cessors for  the  Atari.  This  feature  alone  would 
make  the  program  worthwhile  for  anyone  who 
publishes  a  newsletter. 

Printing  copy  on  cut  (vs.  continuous)  paper  is 
facilitated  by  the  page  eject  and  wait  commands. 
The  former  performs  a  form  feed,  seeking  the  top 
of  the  next  page.  The  latter  causes  printing  to  be 
suspended  until  a  new  sheet  of  paper  is  loaded. 

The  chaining  feature  is  a  powerful  means  to 
overcome  the  limitations  imposed  on  the  size  of 
text  files  by  the  amoimt  of  available  memory.  With 
a  ■52K  system,  no  text  file  may  be  greater  than  the 
equivalent  of  abottt  6.5  single-spaced  pages.  Sooner 
or  later,  most  users  will  confront  this  ceiling,  and 


will  despair  unless  they  see  one  implication  of 
CHAIN:  manuscript  components  (ranging  from 
single  characters  to  the  largest  amount  of  text 
permitted  by  memory)  may  be  strung  together 
with  a  command  string  in  the  first  text  file,  resulting 
in  the  seqtiential  printing  of  the  whole. 

The  Final  Overview 

•  Panelist  #1: 

"Overall,  Textwizard  is  a  very  clean,  useful  word 
processor,  delivering  all  that  Datasoft  says  it  will.  It 
is  easy  to  use  and  requires  very  little  effort  on  the 
user's  part  to  get  excellent  performance.  It  is  also 
fast.  The  editing  and  searching  functions  are  ex- 
tremely swift  and  accurate.  The  chain  conrmand 
works  well  and  facilitates  printing  and  editing 
large  blocks  of  text  efficiently.  The  only  two 
enhancements  it  could  use  (but  doesn't  need)  are 
graphic  display  of  the  formatted  page,  and  perfect 
spelling." 

•  Panelist  #2: 

"In  short,  Textwizard  is  a  generally  well-conceived 
word  processing  system  for  the  Atari.  Sometime 
between  ccjnception  and  delivery  to  the  user,  how- 
ever, various  gnomes  intruded  and  left  indelible 
marks  on  the  product.  Textwizard  is  well-suited 
for  pieparing  term  papers,  inter-office  memos, 
and  informal  personal  correspondence.  It  may 
even  be  appropriate  for  the  Great  American  Nove- 
hst.  Professional  technical  writers  and  business 
executives  will  be  happier  and  more  productive 
with  the  much  more  powerful  -  and  costly  -  word 
processing  products  that  are  targeted  to  their  more 
complex  needs." 

•  Panelist  #3: 

"With  over  fifty  commands  available  to  aid  in  edit- 
ing, formatting,  storing  and  printing  text,  Textwi- 
zard certainly  provides  the  user  with  serious  word 
processing  capabilities.  The  program  is  well  thought 
out;  the  formatting  commands  are  simple  and  easy 
to  use.  Although  a  touch  typist  will  probably  have 
some  small  difficulty  learning  to  use  the  extra  keys 
with  finesse,  this  is  certainly  not  a  drawback  of  the 
program.  While  certain  portions  of  the  program 
are  weak. ..lack  of  menu  and  scrolling,  and  a  very 
time  consimiing  search  and  replace  fimction,  these 
are  more  than  offset  Ijy  the  speed  and  ease  of  use 
which  other  areas  of  the  program  deliver  to  the 
u.ser.  All  things. considered,  Textwizard,  at  a  list 
price  of  $99.95,  is  a  good  buy  and  one  which  could 
be  reconmiended  to  all  Ataii  800  owners." 


Textwimrd.  Dalasofl  Inc.,  19y  !9  liii.Hiiw.ts  Ciniter  Diivi', 
Northridge,  CA  91324.  $99.95.  32K  and  one  or  more  disk 
drives  and  compatible  with  Atari  825,  Centronics  737 ,  and 
Epson  MX-80. 


100 


COMPUTEI 


Fetjruary,  1982,  Issue  21 


Put  Graphics 
Modes  1  And  2 
At  The  Bottom 
Of  Your  Screen 


R.Alan  Beike 
DeKalb.  IL 


Most  of  you  who  are  regular  readers  of  COMPUTi! 

are  familiar  with  the  mixing  of  the  graphics  iiKjdes 
("Mixing  Atari  Graphics  Modes,"  COMPUTE!  #6). 
The  only  problem  is  that  you  can't  use  a  mode  past 
its  regular  range.  That  is,  if  you  wanted  to  use 
Mode  1  past  line  20  or  Mode  2  past  line  10,  you 
couldn't.  So  you  were  stuck  putting  text  you  wanted 
at  the  top  of  the  screen  or  in  the  text  window.  Until 
now,  that  is! 

What's  The  Display  List? 

First  we'll  look  at  the  Display  List  to  see  what  it  is 
and  what  it  does.  Figure  I  shows  the  Display  List 
for  Mode  3.  You  can  verify  this  by  running  Program 
L  Locations  560,561  contain  the  starting  address 
of  the  list. 


Figure  I. 

1 12,112,1 1 2,72,1 12,158,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 
8,66,96, 1 59,2,2,2,65,78, 1 58 


The  purpose  of  the  list  is  to  tell  the  computer 
how  to  display  the  information  stored  in  the  screen 
and/or  text  memories.  Let's  see  how  it  does  this. 
The  first  three  bytes  (112)  set  up  the  margin  at  the 
top  of  the  screen.  How  they  do  this,  I  don't  know. 
Anyone  out  there  know?  Next  comes  what  1  call  an 
adclress  byte,  (72).  In  this  case,  a  Mode  3  address 
byte.  (Figure  2  shows  what  the  address  bytes  are 
for  each  of  the  modes.)  'Fhis  byte  pulls  double 
duty.  First,  it  sets  the  first  line  to  Mode  3.  Then  it 
tells  the  comp^uter  that  the  next  two  bytes  contain 
the  address  of  the  screen  memory. 


Figure  2. 

MODE  012345     678 

ADDRESS  BYTE  66  70  71  72  73  74  75  76  77  79 


The  next  1 9  bytes  (8)  set  one  line  each  to  Mode 
3.  I  call  these  Mode  3  bytes.  You  gel  the  value  for 
these  bytes  by  subtracting  64  from  the  address  byte 
(72-64  =  8).  From  this,  we  can  deduce  that  any  byte 
with  bit  6  on  is  an  address  byte.  Also,  notice  that  19 
Mode  3  bytes  with  the  Mode  3  address  byte  give 
you  20  rows  of  Mode  3,  which  fills  the  screen  up  to 
the  text  window. 

For  whatever  mode  you  are  in,  you  will  have  1 
address  byte  and  the  number  of  rows,  minus  1 , 
regular  bytes.  For  example,  Mode  7  will  have  a 
Mode  7  address  byte  (72)  and  79  regular  Mode  7 
bytes.  Giving  you  80  rows.  To  find  out  how  many 
rows  each  mode  has,  check  the  "Table  of  Modes 
and  Screen  Formats."  It's  on  the  inside  back  cover 
of  your  Basic  Reference  Manual. 

The  Last  Three  Rows  Of  The  Text  Window 

Now  here's  the  important  part.  The  next  byte  (66) 
is  a  Mode  0  address  byte.  But,  instead  of  the  next 
two  lines  containing  the  address  of  the  Screen 
memory,  they  contain  the  address  of  the  Text 
Editor  memory.  This  is  the  start  of  the  text  window. 
Modes  1  through  8  use  the  Screen  memory.  Mode 
0  uses  the  Text  Editor  memory.  As  you  may  have 
already  guessed,  the  next  3  bytes  (2)  are  Mode  0 
bytes,  giving  us  the  last  three  rows  of  the  text  win- 
dow. If  we  were  in  a  full  screen  format,  these  last 
six  bytes  would  not  be  here. 

Now  we  are  to  the  end  of  the  list.  This  next 
byte  (65)  is  also  an  address  byte.  But  it  has  a  special 
purpo.se.  It  tells  the  computer  that  it  has  reached 
the  end  of  the  list  and  that  the  next  two  bytes  contain 
the  starting  address  of  the  list.  (The  same  as 
locations  560,561.) 

Before  we  go  on,  let  me  say  that  the  bytes  that 
contain  the  addresses  may  vary,  depending  on  the 
Mode  you're  in  and  on  the  amoiuit  of  memory  you 
have.  All  the  other  bytes  will  be  tlie  same. 

So  how  do  we  get  Modes  1  and  2  on  the  bottom 
of  the  screen?  It's  simple!  Basically,  all  we  do  is 
change  the  Mode  0  bytes  to  Mode  1  or  2  bytes. 
Presto!  The  computer  now  displays  the  Text  Editor 
memory  in  Modes  I  or  2. 

Let's  look  at  Program  2  to  see  how  this  is  done: 

Line  10:  sets  the  margins  to  40  characters  per 

line  and  selects  mode  3  with  text  window. 

Then  it  finds  the  address  of  the  Display  List. 

Line  20:  searches  the  list  for  the  start  of  the 
text  window. 


furFltEri 

n  FinsfiBsl  liJissrd 

The  Ult:innat;e  Personal  Finance  Management;  System 

This  new,  comprehensive  system  enables  you  to  determine  how  nnuch  you  can 
afford  to  spend  and  what  can  be  saved  or  invested.  It  graphically  illustrates 
the  answers  to:  "Where  does  the  money  go?"  It  also  does  a  great  deal  more 
.   .  .  nothing  else  even  comes  close! 


Budget  ProjectionB 


Check  Entry 


A 
B 

flUTO 
BOOK^ 

5 

IS 

L 
M 

LEI5UBt        S 

KEDICftL        5 

ioo 

120 

100 

M 

CHllRIfV        5 

OENTIST 

S 

so 

0 

IMUE5TINCS 

mo 

t 

ELECTRIC 

S 

40 

P 

t1AGAZINES$ 

20 

FOOD 

s 

400 

n 

HI5CEL           5 

25 

G 

Ga5 

$ 

22 

R 

RENT                 S 

450 

H 

COMPUTER 

s 

30 

■i 

SCHOOL           S 

0 

i;m5ur«nces 

75 

T 

TELtPHOMES 

25 

J 

CABLE     TU 

s 

22 

II 

OPEN                 S 

K. 

GARDEN 

s 

IB 

V 

H/5aL0HY     S 

JOOO 

MONTH ; 1 

iflLORY: 

EXTER     CftTEGOfJY     THEM     AMOUNT. PRE^ 

agcmx:  to  enter  Dfltfl 


Check  Seerch  Menu 


'  a  .  AUTO 
B.  DODICS 
C.DLOTHES 
D .D£HTXST 

'   E.ELECTfilC 

F.Faofr 

I   CGAS 
I   H.CDWUTEE 
I.IHSUBailCE 


mjiavami^333m 


caDLL 

.LEISUBE 
HEfrlCSL 
CHABITV 
INVESTIHC 

. NaCAZiaES 

. HI^CEL 

.  BEWT 


V. SCHOOL 
r .TELEPHONE 
U . DPEH 
V.M/ SALARY 
H.KXLDHATTS 
K. TAXES 
V.HILEACE 
Z.OPEH 


fro    you    Bant    to    search    kv.,, 
E.    Uam^ 
Z.    Category 
X.    Tax    BeitucTible    Checks 

4 .  Chec  h    ttuHfref 

5.  Exit   ti>   Hain 


You  are  given  21  categories  for  which 

:  j  you  enter  a  monthly  plan  and  your 

anticipated  income.  The  categories  can 

be  modified  by  name  or  amount  at  any 

I  time  by  you.  The  program  prompts  you 

ij  every  step  of  Che  way. 

Enter  data  .  .  .  month,  check  //, 

amount,  y  or  n  for  tax  deductibility, 

payee.  Enter  bank  deposits  and 

interest.  Record  up  to  ninety-six  checks 

per  month  in  amounts  up  to  S99,9a9.00- 


I 


Your  checks  can  be  sorted  and  dis- 
played in  four  different  ways:  Name, 
Category,  Tax  Deductibility,  Number. 
This  can  be  done  on  a  monthly  or 
annual  basis.  The  checks,  deposits 
and  interest  data  are  automatically 
filed  for  access  by  the  Bank  State- 
ment Reconciliation  Program. 


Detailed  comparisons  are  displayed  on 
a  monthly  or  categorical  basis  which 
show  ±  and  percentage  relationships. 
You  can  then  identify  and  analyze  obvious 
and  not-so-ohvious  relationships 
of  the  entered  factors. 

Colored  bar  charts  are  generated 

rapidly  via  machine  language  comparing 

the  amounts  projected  with  actual 

expenditures.  Chart  displays  are  produced 

for  both  months  and  categories. 


Also  included  in  the  system  are: 

■  Printout  options — all  popular  4D/B0  col.  printers. 

■  Multi- color  graphics  and  sound  enhancements'. 

■  4  record  keeping  categories  for  electric  usage,  gas 
consumption  or  whatever  you  wish  to  track. 

■  Check  reconaliation-calculating  totals  and  displaying 

#  of  checks  and  deposits  outstanding . 

■  An  audio/ visual  reward  if  your  account  balances. 

■  a  utility  programs. 

■  User-friendly  operation  and  full  documentation. 
The  system  is  designed  for  Atari*  computers  having 
a  minimum  of  24K  and  operating  from  a  disk  drive. 

*  trade  mark  of  Atan.  Ire       QK  Residents  Add  4  %  Tax 


Tfie  price  of  the  system  is  only  S49.95  plus  $2.00  for  handling/ postage. 
If  your  local  dealer  does  not  have  the  financial  Wizard .  .  . 
Telephone  orders  are  accepted  on  Mastercfiarge  or  Visa  credit  cards, 
fvlaii  order  must  be  accompanied  by  check  or  money-order  or  credit  card  #. 
Dealer  inquiries  invited.  [405]  751  -2783  From  Compucari. 


Exclusively 
thru 


nni    I  inn- 
ui\i    uinii. 


COMPUffB  CfNTlB*  af  OHC 


□  CHECK  EMCLDSED 

NAME  [Print]  

Address   

City 

Card*    


10944-A  North  May 
Oklahoma  City,  OK     73120 
(fl05j 751-2781 

n  VISA  D  MASTERCHARGE 


.State. 


-2p 


Exp.. 


-Sig.. 


102 


COMPUTEI 


FebfUDry.  1<?e2  Issue  21 


Line  30:  changes  the  Mode  0  bytes  to  Mode  1 
bytes. 

Line  40-50:  the  periods  denote  spaces. 

There  are  a  few  things  of  which  to  be  aware.  Even 
though  you  are  using  Modes  1  and  2,  you're  using 
the  Text  Editor  memory;  so  the  computer  thinks 
in  40  cohnnn,  not  20  column  lines,  which  means 
two  lines  now  equal  one  old  line.  Here  is  an  example. 
Suppose  we  use  an  empty  PRINT  statement,  plan- 
ning to  leave  a  blank  line.  Sorry,  it  won't  work.  We 
would  have  two  blank  lines.  What  we  do  is  put  20 
spaces  in  front  of  what  we  want  printed  on  the 
second  line.  Also  remember  that  we  are  using  the 
Text  Editor,  so  PRINT  #6  will  not  work.  Try  some 
different  things  yourself. 

What  About  Mode  Two? 

Well,  that's  almost  as  simple.  Mode  2  lines  are  twice 
as  wide  as  Mode  1  and  0:  so  there  are  only  two 
combinations  using  Mode  2  possible:  two  rows  of 
Mode  2  or  one  row  Mode  2  with  two  rows  of  Mode 
1.  We  can  only  use  the  same  amount  of  room  as 
was  originally  there.  Program  3  uses  the  latter 
option  from  above: 

Lines  10-20:  same  as  Program  2. 

Line  30:  basically  the  same  as  in  Program  2; 
only  this  lime  we  make  the  second  line  Mode 
2.  And,  since  we  use  one  less  byte,  we  have  to 
move  the  end  of  the  list  one  location  forward. 

By  now  you  should  be  able  to  change  the  text 
window  into  any  combination  of  Modes  I  and  2 
you  wanl.  If  you  have  a  program  that  would  work 
better  with  the  text  at  the  bottom  of  the  .screen  or 
the  text  window  as  Modes  1  or  2,  get  to  work,  experi- 
ment! Remember,  you're  the  boss. 


Program  1. 

10  GRAPHICS  3;A=PEEK(560HPEEK(561)*256 

20  ri=PEEK(A):?  D ;"."?: IF  D065   THEN  A=A+ 

i:  GO  TCI  20 

30  ?  PEEK(A+-;l)i"."i;PE;EK(A+2) 

40  GOTO  40 


Program  2. 

10  POKE  82 1^0: GRAPHICS  3:A=PEEK(  560  )+PEEK 

(561  )*256 

20  IF  PEEK(A)<>66  THEN  A=An:GOTO  20 

30  POKE  A > 70: POKE  A+-3f6sP0K£  A+4i-A:P0KE 

A+5j6 

40   ?   ".ATARI. AND. COMPUTE! AN.UN&EATA 

BLE.." 


50   ?    " TEAM...„ FOUR. LINES. M 

0E..1" 

60  COLOR   2:SETC0LOR   1^10t6:PLOT   17yl:DRA 

WTO   i7flO:DRAUTO   9^.18 

70   PLOT   19yl:i:iRAWT0   19yl8:PLDT   20»l:IiRAW 

rO  20^13 

80  PLOT  22»1:DRAWT0  22^iO:DRAWTO  30,18 

90  GOTO  90 


Program  3. 

10  POKE  82»0:GRAPHKB  3".A=PEEK(  560  )+PEEK 

(561)*256 

20  IF  PEEK(A)<>66  THEN  A=A+lsGOT0  20 

30  POKE  A » 70 SPOKE  A+3f7:PQKE  A+4f6:P0KE 

A+5,65:P0KE  A+6>PEEKX  A+7  ):POKE  A+7,PEEK« 

A-f3) 

40  ?  ". ATARI. ANIi. COMPUTE!...!. LINE. DP. MO 

[IE.  2."' 

50  ?  "..2. LINES. OF. MODE. 1" 

60  COLOR  2:SETC0LOR   1,10,6:PL0T   17,l:tiRA 

WOD   17»10;liRAlOTO  9»ie 

70  PLOT   19»l:riRAWT0   19 >  18: PLOT   2O»1:0RAW 

TO  20»13 

80  PLOT  22flsIiRA«T0  22>  lOrDRAUTO  30»i8 

90  GOTO  90  © 

educational  software  for  the  ATARI'  educational  software  for  the  APPLE  = 

I  HIDDEN  WORDS  } 


s 


A  word-search  program  for  the  ATARI*. 
Move  your  character  over  the  tetters 
that  spell  your  word.  Words  may  be  read 
from  left,  right,  up,  down,  or  diagonally. 

•  For  one  or  two  players 

•  Four  levels  of  play 

•  Comes  with  word  base  of  the  most 
frequently  misspelled  words, 

•  Requires  JOYSTICKS 

24K  BASIC,  Grades  1-6+  ...   917.50 

SPATIAL  RELATIONS 

Designed  to  help  the  child  learn  words  For  the  ATARI' 

that  indicate  size  and  placement  Units 

coven   big/small,  tall/short,  right/left, 

high/low,  over/under,  in/ouL  Requires 

one  joystick.   Minimal   reading.   SIDE 

TWO  REQUIRES  NO  READiPHG  ■  Use 

with  Type-TH-Talk'"  speech  synthesizer. 

16K  BASIC,  Preschool- 1  ....   917.50 

Type- rf -Talk™***    speech  synthesizer  (VOTRAX), 
Let  ycur  computer  talk  with  one  of  the  easiest  to  use  speech 
synthesizers  on  the  market 
Requires  RS-232  interface 9375.00 

^.H.E.S.I.S. 

P.O.  Box  147  .  Garden  Oty,  Ml  48135 

or  call  (313)  595-4722  for  CO.D. 

Some  T.H.E.S.LS.  software  is  now  avaUable  for  the  APPLE  ll-l- 

DEALER  IMQGIRIES  WELCOME 
RMse  add:  51.50  shipping'handling.  SI. 50  for  C.O.D..  Mich   fes.  add  i%  sates  lax 


a. 
e 


WRITE  FOR  FREE  CALALOG 

'ATARI  IS  trademark  of  Atari,  Inc  "APPLt  is  trademarkol  Apple  Compirtef.Inc' 
tradcmsrit  of  Votiax. 


"Type- N  Talkis 


aiEM^os  |i:uoni>3npa  ..+||  gnddv  ^V  -"OJ  are*yos  leuoj^eonpa  javiV  ^m"' 


Fantasy  for  your  ATARI 

All  BAb^ 

3int>  the  fortvj  tliicvcs 


lly  Stuart  Smith 


Guide  yi>ur  altor  C(Jo.  Ali  I5iilk\.  ihrmifth  iho  thitves  mountain 
den  in  an  allem|j!  !o  rL'si'uc  the  liiMutiful  ijrinCL'SS,  Tri^ASure, 
mafiic.  and  jjre£it  danjjcr  flwflit  you!  One  or  nioru  hum.\n  pJAyers 
can  guide  up  to  seventeen  friendly  chariiefers  throujjh  the  many 
rooms,  halls,  and  caves.  Some  characters  wander  around 
randomiv.  making  each  adventure  a  little  different. 

AL\  BABA  AND  THK  F"()RT^'  THII-.VES  is  writien  in  high 
resolution  color  graphics  and  includes  music  and  sound  cffects- 
.Adventures  can  be  saved  lo  disk  and  resumed  at  a  later  time- 
Requires  32  K. 

On  Diskette  Only  -  S32.flS 

Graphics  for  your  ATARI 

Character  Maqic 

Bv  Chris  Hu"  *"^ 


Ifs  ecisv  to  create  vour  own  charocter  sets  and  save  them  to 
diskette  or  cassette  witti  CHARACTER  MAGIC.  But  this  is  not  just 
another  character  editor.  CHARACTER  MAGIC  helps  vou  use  all  the 
character  types  that  the  Atari  is  capable  of.  including  descending 
characters  (8  x  10  dots)  and  two  types  of  five-co!or  character 
graphics  not  supported  by  Atari's  Operating  System.  Documenta- 
tion includes  examples  of  display  lists  that  let  you  use  these  "secret" 
graphics  modes.  Requires  32K. 

Cassette  or  Diskette  ■  529.95 

FOR  OUR  COMPLETE  LINE  OF  ATARI  SOFTWARE 
PIEASE  WHITE  FOR  OUR  CATALOG 

ASK  FOR  QUALITY  SOFTWARE  products  at  your  (avorite  computer  store.  II  neces- 
sary  you  may  order  directly  Irom  us.  MasterCard  and  Visa  cardholders  may  place 
ortlers  by  calling  us  at  (213)  344^99.  Or  mail  your  check  or  bankcard  number  to  the 
address  above.  California  residents  add  6%  sales  tan.  Shipping  Charges:  Within 
North  America  orders  must  include  S1.50  for  shipping  and  handling.  Outside  North 
America  the  charge  for  airmail  shipping  and  handling  isSS.OO.  Pay  in  U.S.  currency. 


QUTiLny 

SOF=TW71R€ 


6660  Reseda  Blvd  .  Suite  105.  Reseda.  Co  91335 


1213)  3-^  6599 


^^ 


m 


ih  \ 


MICROWORLD,  an  adventure  within  your  computer  is  available 
on  the  ATARI  and  the  TRS-80  You  are  transformed  into  an 
electroid  and  must  explore  thecircuits  of  yotir  computer  OvorSO 
locations  and  many  oiigmal  problems  exist  within  itie  maze  of 
transf  oi  mers  and  transistors  We  dare  you  to  explore  the  maze  of 
bil  celts'  Each  version  of  Microworld  explores  the  workings  of  its 
respective  computer.  Atari  or  TRS-80  Microworld  comes  with  a 
booklet  defining  terms  and  describing  the  function  of  the  mystify- 
ing inner  workings  of  home  computers  Come  face  to  face  with  a 
staticon'  Explore  the  Microworld' 

SATISFACTION  GUARANTEED! 

I'  for  any  reason  you  are  not  satisfied  with  our  products,  return 
your  order  Within  14  days  for  a  prompt  and  cheerful  refund 

ORDERING  INFORMATION 

Orders  are  processed  withit?  five  working  days.  Shipping  and 
handling  charge  of  Si  00  will  be  added  to  all  orders  within  the  U.S 
and  Canada  Overseas  orders  please  add  S3, 00  for  air  post 

Atari  Microworld        Alan  400  and  800 

32K  Cassette  SI 9.95- 

Atari  400and  800  ; 

32K  Diskette S22  95 

TRS-eO  Microwrold        TRS-80  f^Odel  I  arid  Model  III 

Level  II  16K  Cassette ■ S19.95 

.  ,.S-80  Model  land  Model  111 

Level  II  32K  Diskette  S22-95 


MICROWORLD  S 


SHIPPING 


CASSETTE 


DISKETTE 


EXP  DATE 

MED  SYSTEMS  SOFTWARE 

PO.  Box  2674.  Ctiapel  Hill.  NC  27514 
1-800-334-5470 


'Indicates  trademarks  of  Atari 


104 


COMPUTEI 


Februorv,  1982.  Issue  21 


Atari  PILOT 
At  The  Helm 

Patricia  Tubbs 
Sunnyvole,  CA  94086 


As  instructor  for  Gifted/Talented  students  in  the 
Sunnyvale  Elementary  School  District  and  educa- 
tional computer  consultant,  I  have  had  the  oppor- 
tunity of  field  testing  Atari's  PILOT  language  for 
the  past  year. 

As  a  programmer  in  BASIC  at  an  intermediate 
ability  level,  I've  found  Atari's  PILOT  extremely 
easy  to  use.  Not  only  is  text  manipulation  easily 
managed,  but  also  both  sound  and  high-resolution 
graphics  are  within  the  reach  of  beginners. 

PILOT  was  originally  developed  by  Dr.  John 
Starkweather  of  the  University  of  California  Medi- 
cal Center,  San  Francisco.  It  is  a  computer  language 
which  is  word-oriented  rather  than  number- 
oriented.  People  without  any  prior  knowledge  of 
computer  programming  find  it  easy  and  under- 
standable to  use  in  a  very  short  time.  The  knowledge 
developed  while  using  PILOT  is  a  good  foundation 
for  moving  on  to  other  computer  languages. 

Curriculum-based  Programming 

ATARI  PILOT  makes  preparing  current 
curriculum-specific  programs  fairly  easy.  It  has 
three  modes  of  operation;  they  are:  immediate 
mode,  auto-number  input  mode,  and  run  mode. 
When  using  the  immediate  mode  your  commands 
are  executed  immediately  upon  typing  them  and 
pushing  the  RETURN  key.  The  auto-number 
input  mode  accepts  PILOT  statements,  cliecks 
them  for  syntax  errors  and,  if  correct,  assigns  a 
number  in  sequence  to  each  line  and  stores  the 
statement  in  the  program  storage  area.  The  run 
mode  executes  any  program  in  the  computer's 
memory. 

With  this  language  the  programmer  has  the 
ability  to  control  the  appearance  of  words  on  the 
screen.  In  BASIC  any  print  statement  may  appear 
to  be  spaced  accurately  and  not  divide  words  in 
inappropriate  ways  until  that  print  statement  is 
run.  At  that  time  the  computer  automatically  di- 
vides any  word  at  the  end  of  a  40  space  line.  This  is 
especially  difficult  if  you  wish  to  have  a  string 
variable  (such  as  the  student's  name)  inserted 
within  that  line.  However,  in  PILOT,  the  computer 
will  not  break  any  words  in  a  T:  (type)  statement, 
but  w'ill  simply  move  them  ahead  to  the  next  line. 
This  feature  is  probably  my  favorite  point  for 


using  PILOT  when  writing  curriculum-based 
programs. 

Another  of  the  built-in  features  that  is  ex- 
tremely helpful  is  the  ability  to  renumber  the  pro- 
gram lines.  The  lines  within  the  program  may  be 
renumbered  by  any  increment  starting  at  any 
number.  This  is  especially  helpful  if  you  have 
created  a  particularly  useful  graphic  design  or 
musical  piece  and  wish  to  u.sc  this  module  in  some 
other  program  at  another  date.  By  renumbering 
the  module  to  correspond  to  the  new  program,  this 
module  can  become  a  part  of  the  new  program 
without  the  need  of  retyping  it  into  the  computer's 
memory. 

The  main  text  of  your  program  is  made  with 
simple  to  use  commands. 

T:   tells  the  computer  to  Type  this  on  the 
screen. 

A:   the  computer  Accepts  the  user's  input 

M:   matches  the  user's  input  with  the  pro- 
grammer's expected  answers. 

C:   Compute  uses  only  integer  arithmetic 
within  the  range  of -32768  to  32767. 

J:*LABEL  allows  the  program  to  Jump  to  a 
module  of  the  same  name. . 

U:*LABEL  allows  Use  of  a  module  and  then 
returns  to  the  next  statement  following  the  U; 
statement. 

*LABEL 

a  module  is  created  between  these 

_  two  commands. 

E: 

GR:   this  command  allows  use  of  any  of  the 
various  GRaphics  capabilities. 

SO:   allows  use  of  SOund. 

PA:  PAuses  for  a  specific  length  of  time. 

Atari  PILOT  has  been  extended  beyond 
PILOT'S  usual  text  and  computational  abilities  to 
include  Atari's  capability  for  high-resolution 
graphics  and  sound.  This  graphics  ability  is  called 
"turtle  graphics,'  which  comes  to  PILOT  from  the 
LOGO  programming  language,  developed  by  Dr. 
Seymour  Papert  at  MIT. 

The  programmer  is  able  to  control  an  imagi- 
narv  robot  called  a  "turtle"  on  the  video  .screen. 
This  tiutle  may  be  commanded  to  turn  any  nimiber 
of  degrees  and  to  move  forward  any  appiopriate 
number  of  spaces.  In  doing  so,  it  leaves  a  trace  on 
the  screen. 

The  full  range  of  Atari  colors  is  available  for 
the  turtle  to  use.  However,  yoti  may  use  only  three 
colors  and  the  erase  (or  background  color)  at  a 
time.  After  a  figure  has  been  drawn  with  the  turtle, 
you  may  paint  it  by  giving  it  a  FILL  command,  at 
which  time  your  figure  is  filled  with  color.  (See 


ALTERNATE  REALITY 
SOFTWARE 

Presents  for  the  Atari 

THEICHING 

THE  ANCIENT  CHINESE  BOOK  OF  DIVINATION 

•  The  complete  lexi  of  the  world's  oldest  book  on  disk 

•  40K  program 

•  73  disk  files  (155,000  bytes) 

•  Occupying  121 1  disk  sectors 

•  High  Resolution  Graphics 

•  Animation 

•  Music  and  Sound  Effects 

•  Instructional  text  material 

•  Calculates  and  Displays  Hexagrams 

•  Displays  Judgement,  Image,  Moving  Lines  for  primary 
&  secondary  Hexagrams 

•$44.95 

order  from: 

Alternate  Reality  Software 

2111  W.  Arapahoe  Drive 

Littleton,  Colorado  80120 

Dealer  inquiries  invited 
Atari  is  a  T.M.  of  Atari,  Inc. 


ATARI «  400  AND  800"  COMPUTER  OWNERS 


m  OFFER 
YOU  CANT  REFUSE  I 

PDI  produces  some  of  the  most  innovative 

software  for  the  Atari  computer  now 

available.  In  order  to  convince  you.  we 

have  developed  a  sample  cassette  to  show  off 

our  programming  skills.  The  sample  cassette 

has  an  animation-based  educational  program  on 

side  A,  and  a  mixed  graphics  and  voice 

demonstration  on  side  B.  Cost?  Just 

$3.95.  If  you  don't  like  the  programs. 

simply  erase  and  use  the  cassette  as  a 

blank!  (The  cassette  is  a  superior 

quality,  screw  type  C-20  with  premium  AGFA 

or  BASF  tape.) 

If  you  accept  our  offer,  we  will  credit  $3.95 

against  any  future  order  with  our  company. 

Just  return  the  cassette  with  your  order. 

For  the  sample  cassette  send  $3.95  to 
Program  Design.  Inc.,  11  Idar  Court. 

Greenwich,  CT  06830.  (Foreign  orders 
include  an  extra  $2.00  for  postage.' 


ATARI "  is  the  registered  trademark  of  ATARI.  Inc. 


^  SYNCRO,  INC. 


SOFTWARE  DIVISION 
31332  VIA  COLINAS  SUITE  107 
WESTLAKE  VILLAGE,  CALIF.  91361 
213-889-9508 
T.M. 


SOFTWARE  FOR 


ATARI 


400/800 


J* 
V 


iJ^/yU^J"^  ©1982 
ALL  GRAPHIC  ADVENTURE.  CAN  YOU  FREE 
YOURSELF    FROM  ALIEN   HELL?   IN  THE  SPIRIT 
OF  THE  "MAZE  OF  DEATH". 

JOYSTICK  REQUIRED 
T6K  Tape  $14.95  24K  Disk  $19.95 


ulilli      l^^lM!|l|     ®  1981 

A    NEW    GRAPHIC    ADVENTURE.    SIT    BACK 

WITH    YOUR    JOYSTICK    AND    DIVE    THE    DEEP 

BLUE  SEA.  RENT  RIG  AND  CREWTO  PLUNDER 

THE   STRANGE  TREASURES  THAT  AWAIT  YOU. 

JOYSTICK  REQUIRED 


24K  Taoe  $16.95 


iwwmi 


32K  Disk  $21  95 


©  1981 


ARE  YOU  A  SUPERAGENT'  A  FAST  ACTION, 
ALL  GRAPHIC  GAME  WITH  PLENTY  OF  SPECIAL 
EFFECTS  IN  A  MAZE  LIKE  UNDERGROUND  COM- 
PLEX. FIVE  LEVELS  OF  PLAY  IN  REAL  TIME. 

JOYSTICK  REQUIRED 
16K  Tape  SI  2-95 24K  Disk  S17.95 


VISA  AND  MASTERCARD  ACCEPTED. 
CALIF.  RES.  PLEASE  ADD  6%  SALES  TAX 
PLEASE  INCLUDE  $1 .50  SHIPPING 
DEALER  INQUIRIES  WELCOME 


^^^^H^//^ 


o'utiT.i.n;    C>olt 


BUDGETMASTER  ($34.95) 

•  is  a  professional  budgeting  lool  geared  todevelopand  maintain 
even  the  mosi  complex  budget.  At  the  same  time,  the  easy  (o 
readmanualandlhe  friendly  protn  pis  al  low  even  the  begin  ning 
budgeter  without  computer  experience  to  develop  a  budget  to 
meettheirneeds. 

•  includes  the  opiion  for  hardcopy  printout  of  any  ol  the  39  differ- 
ent displays  as  well  as  an  opt  ion  to  save  you  r  data  to  cassette  or 
diskette. 

•  requires  32KR.'\M 
CHECKBALANCER  ($16.95) 

•  although  the  perfect  companion  program  lo  the  Budgetmaster, 
stands  alone  as  a  great  lool  lo  balance  your  checking  ac- 
countls),  with  a  monthly  breakdown  of  your  spending  pattern. 

•  allows  you  lo  store  your  spending  analysis  lo  tape  or  diskette,  or 
use  Checkbalancer  in  conjunction  with  the  Budgemaster, 
and  automatically  rewrite  the  expense  data  of  the  latter  pro- 
gram process. 

•  requires  I6K  RAM 

BUY  BOm  PROGRAMS  TOGETHER  FOR  $39.SS  AND  SA  VE$f1.95!!! 

Send  check  or  money  order  pluB$1.50forshipplngandhandling 

and  save  C.O.D.  fee  (Sorry,  no  credit  cards) 

Ohio  Residents  Add  Sates  Tax 

(DEALER  INQUIRIES  WELCOME) 

§u.t-.i^.  ^„ftw^-..®<P.0, 60x25621  •  Garfield Hts„ Ohio 44125 

(216)581-9359 

■Atar  Is  I  TnOnnat  Df  Alat,  Inc. 


106 


COMPUTEJ 


February.  1<?82  Issue  21 


Program  1.) 

When  writing  SOund  components  in  your 
program  vou  have  the  facility  to  command  four 
voices  (up  to  a  four-note  chord)  between  C  below 
middle  C  to  F#  and  C  above  middle  C  This  gives 
you  a  chromatic  scale  of  3 1  notes  with  C  below 
middle  C  =  1  and  F#  above  C  above  middle  C  =  3 1 . 

By  including  the  PAuse  command,  one  may 
hold  each  note  or  chord  for  a  given  length  of  time. 
The  length  of  the  pause  is  determined  by  the 
number  of  l/60th  of  a  second  ticks  selected  (e.g. 
one  tick  equals  l/60th  of  a  second,  and  60  ticks 
equal  one  second).  (See  program  2  and  Figine  1.) 

The  Atari  joysticks  and  paddles  can  also  be 
used  within  your  program.  You  may  use  up  to  foui- 
joysticks  in  as  many  as  1 1  positions,  with  the  joystick 


duck.  To  draw  these  pictures  using  the  turtle,  I 
tttilized  the  instructions  which  I  found  in  a  crafts 
book  for  sewing  them  in  cross-stitch  embroidery. 
These  instructions  come  printed  on  a  grid  wliich  is 
similar  to  the  imaginarv  grid  on  the  computer's 
video  monitor.  By  placing  the  turtle  at  the  middle 
of  the  embroidery  grid,  you  can  have  it  move  the 
appropriate  number  of  squares,  turn,  and  move 
again  where  needed. 

With  the  PILOT  cartridge.  Atari  has  provided 
an  exceptionally  beautiful  teaching  guide  for  child- 
ren. It  is  an  easy  to  follow  as  well  as  aesthetically 
attractive  manual  which  all  cliildren  will  enjoy 
using.  Also  included  is  a  general  manual,  as  well  as 
a  documented  demonstration  tape. 

My  fifth-grade  students  who  field-tested  Atari 


Figure  1. 
PILOT  Sound 


13     14 
1       2 


J^J^- 


15 

4 


16     17     18    19 

5       6       7 


iJ  d^  J  *t^ 


^ 


25     26 


27     28 


29    m 


Scale  #3 


trigger  having  a  two  position  value.  Four  pairs  of 
paddle  controllers  with  a  range  from  0  to  227 
rotary  positions  may  be  used. 

Another  useful  feature  is  the  .synchronization 
of  an  audio  tape  to  the  computer.  One  cotild  use 
the  audio  portion  of  a  tape  to  give  instructions  for 
a  given  program  or  perhaps  give  a  spelling  word 
orally.  I  see  this  as  a  particularly  convenient  aspect 
when  writing  programs  for  beginning  readers  or 
children  witii  learning  disabilities.  While  the  audio 
portion  is  running,  the  computer  can  display  infoi- 
mation  on  the  monitor  simultaneously. 

PILOT  is  an  easy  to  use  programming  lan- 
guage, one  I  am  sure  that  most  educators  will  find 
ver\  useftil  for  curriculimi  development  for  their 
specific  classroom  needs. 

Beatrix  Potter  On  The  Computer 

Program  3  was  written  to  use  in  the  study  of 
the  literature  written  by  Beatrix  Potter.  This  pro- 
gram was  used  as  a  biographical  introduction  and 
follow-up  lesson.  With  each  question,  several  possi- 
ble answers  were  displayed.  If  students  typed  in 
the  incorrect  answer,  they  were  given  some  further 
information  and  returned  to  the  original  question. 
In  this  particular  program,  even  wrong  asiswers 
produced  tinther  learning  experiences. 

This  shows  a  color  picture  on  the  TV  mtmitor 
when  a  correct  answer  is  typed:  a  bininy  and  a 


PILOT  had  no  difficulty  learning  quickly  to  draw 
pictures,  manipulate  text,  and  add  sound  effects  to 
their  programs.  I  see  this  language  as  the  first 
language  that  beginning  programmers  sliould 
learn.  It  is  motivating  and  a  good  basis  for  learning 
other  computer  programming  languages. 


Progrann 

1. 

200  :^^B! 
210  .. 

220  .. 

-DCK 

R^THIS  IS  H  Sh^IPLE  PROGRfttl  OF 
BLOCKS  STACKED  OH  ONE  AHOTHEP 
bR  ■■  bOTO-S ..  -30 .;  CLEAR 

380  -. 
310  .. 

359  .. 

360  .. 

370  .. 
380  .. 

GR^PEM  RED 
U::^SQUARE 
bR^bOTO  -0..-14 
GR-PEH  BLUE 
U^tSQUftRE 
GR:GGTu-9.2 

390 


405 
410 
490 

500 

550 
560 


GR^PElf  'v'ELLOM 
U^^SQUARE 
U::^?;CkLE 
E^ 


GR=4(DRAUit;TURM90: 
GR^FILLlb 


COMPUTEi's  Listing  Conventions 

Many  programs  which  are  lisLed  in  COMPUTE!  use 
cursor  control  keys,  color  keys,  and  so  fbriti.  We  have 
eslablishccl  a  listing  convention  which  we  iH'licve 
eases  the  task  of  typing  programs  in  accuralcly. 


Atari  Conventions 

For  the  Atari,  all  the  editing  and  cursor-control 
characters  are  spelled  out  and  surrounded  by 
brackets:  [CLEAR]  i'ur  "clear  screen."  Oilier  charac- 
ters, such  as  CTRL-T  (the  "ball"  character)  will  be 
listed  as  the  "normal"  character,  but  within  brackets: 
[T],  A  series  of  identical  control  characters  will  be 
indicated  by  a  number  within  the  brackets;  [3  DOWN] 
means  type  the  cursor-down  key  three  times;  [12  R] 
means  lypeCTRL-R  twelve  times. 

l"wo  control  characters,  [  =  ]  and  [-]  should  be 
shifted.  Any  reverse  field  text  will  be  enclosed  within 
vertical  lines.  (Press  the  Atari  logo  key  [  ^l*.  ]  for  each 
vertical  line  you  see.) 


ATARI 

400  16K   ------------  S319.00 

400  YOURS  TO  32K  or  48K   ----CALL 

800  16K   ------------  729.00 

410  RECORDER  ----------  65.00 

810  DISK  DRIVE  ---------  439.00 

850  INTERFACE   ---------  165.00 

830  MODEM   -----------  139.00 

825  PRINTER   ----------  565.00 

484  COMMUNICATOR  --------  289.00 

ITT  Cordless  phone  -------   199.95 

ZENITH  GRN.  PHOS .  MONITOR   -  -  -   129.00 
EPSON  PRINTERS  ---------CALL 

SOFTWARE  ------------CALL 

SHARP     CALCULATORS        -------CALL 

specials;        -------CALL 

Prices  subject  to  change  without  notice. 
Shipping  extra.  No  tax  out  of  state.  Ca. 
residents   add   appropriate   taxes. 

ME     ARE     AN    AUTHORIZED     ATARI     SALES     AND 
SERVICE     CENTER 

^^  COMPUTERTIME,  INC. 

I  309  Crown  Rd. 

^^V  KENTFIELD,  CA  .  94904 

CALL  TOLL-FREE      BOO-227-2520 
In  California      800-772-4064 


Dealers  - 

Reserve  your 

copies  of 

COMPUTE  s  first 

Atari  and 
PET/CBM  books 

today,  Coll 

919-275-9809 

for  orderir^g 

information, 


HAD  IT  WITH  ERROR  CODES 

LIKETO  BURN  YOUR  REFERENCE  MANUAL? 

THE  ANSWER  IS  HERE  NOW! 


PRO  CARD 


WHEN  YOU  HAVE  ONE  OF  THESE  REFERENCE  CARDS  FOR  YOUR  ATARI'" 
YOU'LL  WONDER  HOW  YOU  EVER  GOT  ALONG  WITHOUT  ONE'  LOOK  AT 
THESE  FEATURES  .  .  . 

All  keyboard  characters  —  exactly  as  they  appear  on  your  monitor. 

Their  ASCII  values  in  decimal  and  hex  with  ASSEMBLER  OF  CODES. 

BASIC  and  ASSEMBLER  error  code  descriptions. 

Player  missile  and  Operating  System  maps. 

The  ATARI™  internal  character  set  displacements. 

An  up-to-dale  list  of  important  OS  locations. 

Much  more! 

This  is  a  fan-fold  card  with  10  pages  packed  full  of  information,  but  when  folded  will  fit  into 
your  pocket,  ready  for  INSTANT  access.  Dimensions  are  3|4  »  9  *  %. 

PRO  CARD 

CALL  OR  SEND  $9.95  TO: 
ON  LINE  COMPUTER  CENTERS  OKC 

10944  A  North  May  Ave. 

Oklahoma  City,  Okla.  73120 

COMPUTER  CLUB  AND  DEALER  INQUIRIES  INVFTED.  CALL  405/751-2783. 

ATARI  is  a  registered  trad«marl(. 


108 


COMPUTEI 


Februap/1<?82,  Issue  21 


Program  2 

996  R=   THIS  IS  THE  ATARI  mSICftL  SCALE 
WITH  EACH  MOTE  HELD  FOR  15/60TH 
SECOMD 
1000  :icSi::ALE 

isie  .r      c=#s=#s+i 

1029  ,.         SO^#S 

1030  .         PAa5 

1040  .         J(#S<3i::-:f;SCHLE 
1050  E^ 


Program  3. 

10    T: 

118  C.^ttH=l 
120  *:BORDER 

140  T: 


150  J(#H<y9>  =  ;;S0R0ER 
lee  T^  BEATR 

170  T: 


>i  POTTER 


180  T^         ONCE  upori  i  tiiiie  tha'^s  u^ers 
ur         little  Rabbits.-   ind  thsir  rtam^s 


i.ijt:re 


1   i  OPSi>j 


rpjpi^y .: 


Cotton-taih 
at"id  Pet-ef' . 


190  T^ 
200  T^ 

210  T^ 

220  T^ 

230  T-- 
240  T: 


250  PA -100 

260  Li:*msic 

270  R^THIS  PROGRAM  WAS  IKITTEH  TO  BE  USE 
D  AS  AH  AUTOBIOGRAPHICAL  IHTRGDUCTIOH  TO 

BEATRIX  POTTER  AND  HER  BOOKS, 
290  R^     PATRICIA  TUEBS.    SUHNVUALE.  CAIRO 
RHIA 
im  p:   LIHE  HJ1EER  970  SHOULD  BE  CHAW:ED 

YEARLY  TO  ALLOW  FOR  THE  CORRECT        AHSW 
ER. 


319  GR^OUIT 

320  T^'lhit  is  your  mm? 
330  A^WMIE 

340  :('FIRST 

350  l--\-ho  wrote  THE  TALE  OF  PETER  RABBIT 
?\ 

366  T:  Berit-rix  Potter 

Mark  Twain  E 

zra  Keats 

370  A  = 

380  GR^QUIT 

390  M:E!EATRIX.  HARK  ..EZRA 

400  Jl^tBEATRIX  mm.  :i;EZRA 

410  mm 

420  T^ 

430  T^riark  Twain  wrote  HiXl'IEEERRY  Fim 

and  other  stories.     Please  try  asain.'--- 
440  .J::lcFIRST 
450  *e:'ra 

460  T- 

470  T^Ezra  Keats  wrota  >JHISTLE  FOR  ^JILL! 

E  and  ot'r-.tr    =;vOrieb;      ?"!e".£-:-  tri:  a^iiri  \ 

480  J=tFIRST 
49S  ivSEATPIX 


>10  T^Ye?,  Beatri:.-  Pottar  wrote  THE  TALE 


OF  PETER  RftBB!^ 


at'id  if/-.  nViirs 


book=  for 


hildren  like  you  af";d  youi""  fr lands. \ 
520  A^ 

530  U^:^EUHN^^ 
540  :^fSECuHD 

550  TM.it-y  did  niss  f^'otta-  writa  THE  TALE 
OF  PETER  RABBIT?\ 
560  T^ 
570  T^  Just  for  the  fun  of   it 

for  tl-.e  lYiorsey  a 

5  a  set  wel  1    letter 
580  A^ 

590  GR^CUIT 

600  n^JUST.FCR..ViELL 

610  JI1^*JU3T  -WU^.  *^^ELL 

620  :^JUST 

630  T^Yes..  Miss  Pctte*'-  did  enJoy  writ  ins 

stories.,  but  th^t  was  not  he?"-  only  raas 
on.     Try  asain.x 
640  T^ 

650  J^tSECOMD 
660  :'?F0R 
670  T^tliss  Potter  did  not  Vi&^i  th'S  ftorsy 

because  s'r-iS  ij-ias  t-Ke  daushter-  of  a  weal  t 
hy  lai.i.iyer       Please  try  asair.''--. 

680  T^ 

698  J4SEC0ND 
Tin   ■'■■'■  CI  - 

710  T^Yes..   she  wrote  this  story  as  a  set 


February,  1982  Issue  21 


COMPUTEI 


109 


well  letter  tor-  r±  aouns  -friend..  5  year 
old  t-bel.  •■•- 
720  T  = 
730  ft^ 

740  U^^BUNMY 
750  *THIRD 

760  J: Miss  Potter  liued  in  \ikAt  country? 
\ 

770  T^ 

789  T^  _       EnsUnd 

Canada 
Uriited  Stat^es 

790  A^ 

800  GRa^iUIT 

810  M^e-JGLAND.  CANADA.  UNITED  STATES 

820  jn-m€      tcm    tmi 

830  :C4hN 

840  T^ 

850  T:     Canada  is  an  Ensl  isl^  speak  ins  co 

untry  tuAt  not  the  hoiiiie  ot  Hiss  Potter. ••■■ 

860  J^tTHIRO 

870  m\i 

880  T^ 

890  T:  Both  Ezf^a  Jack  Keats  and  Mark  Twa 

in  at^e  from  t>i8  United  States  but  Hiss  P 

ott&r-  was  not.--. 

900  J^tTHIRD 

910  m^ 

920  T: 

930  T^  Yes.,   she  liyad  in  England  and  THE 
TALE  OF  PETER  RABBIT  first  appeared  in 
f^rint  in  1901.     ■■. 
940  :^;HUf1BER 

950  T-Can  'jou  tell   your  teacher  and  riiS  h 
ow  Ions  aso  trAt  w-as':' 
960  ft: 
970  t1-80 

980  TH-  Try  SLibtractifiS  that  one  i:>ora  ti 

ifte.  Re-rneiTiber  you  put  this  year'-'s  fiuiiiber 

on  the  top  ujith  19S1  undernath.x 

990  Tr-  t1y..    that  i.sas  a  Ions  tis»e  aso.  wa 

sn't  it..  jmriE  "■  \ 

1030  Jr  *HU:1EER 

1010    A: 

1020  U::*:DUCK 

1830  ^FOURTH 

1040  l^Wai  .:.iiri  the  books  Fub;:5had  in  t 

he  smII  size? 

1058    T: 

1860  T^^^  To  fit  ssiil  1  ^hands  <or> 
The  paper  jiculd  cost  less 
1079  ft: 

1089  GR^QUIT 

1090  n^ HANDS.: PAPER 
1100  JIV:J:HftHDS  :^PAPER 
1110  t^PAPER 


1120  T:   You're  risht..  the  paper  .iouid  co 
st  less.,  but  s'fie  ^-.-.ad  a^iothar  r-easori  -fcir 
want  ins  the  bo■■^:s  nice  and  si^all  .\ 
1130  J  ::;■  FOURTH 
1140  tHAMCS 

1158  T-niss  Potter  told  her  p-inter  that 
the  books  i.vere  to  be  ssitali   eno^.-sh  fo>--  1 
ittle  hands  to  hold,   \ 
1160  T^and  printed  on  'stout'   paper.     Th 
e  size  she  sussested  yas  5  Inches  t-j  3 
3/4  inc'i-.es. 
1178  ft: 

use  \}^mn(. 

1190  -.^.^FIFTH 

1200  T^yas  Peter  Rabbit  translated   into 

ariy  other   1  ansuases':'' 

1210  A: 

1228  GR'K'UIT 

1238  n^YES 

1240  TY: Yes. Peter  Rabbit  has  been  prints 

d  in  twelye  lansuases  includifi?  ftfrikaan 

5  and  .J-iPanese  as  i.oel  1   as  in''. 

1245  TY=  Braille. 

1260  TH:TRY  AGAIN' 

1-''~'fi     !i..l.-''rTC:TU 
i ;-  i  U    .-'1 1 '  .f..   i r  ,n 

128G  ft: 

1290  U:*EUNHY 

1300  tSIXTH 

1310  T^Froiti  where  did  the  ideas  tor  the 

characters  in  Beatrix  Potter's  bo.:kf;  zom 

e';'  '■■■. 

1328  T: 

1330  T:       other  people 

pets  and  aniiViais  she  watcl-ied 
chlldrer 

1340  ft: 

1358  GR:QUIT 

1360  t1 : OTHER; PETS. CH I LD 

1378  .Jri:  MOTHER.  :^^ETS  -■IcCHILD 

1388  :^OTHER 

1390  T:Ho  not  othe-  people..  tr::=  u>-,^  fiior^ 

■illltj    h-i^.i^e.     f-.v-:'^ 

1488  .j:*SIYTH 

1402  KHILD 

1404  T:   Other  cKijdre-   did  offeer  siua  he 

r  ideas;   hc-j^ever,   he"  ;Via:n  ideas  ca.i;e  ct 

her  laays 

1486  .J:|Si;:^TH 

1410  ;^PETS 

1428  T:Yes.   as  a  child  Beatrix  ou^ned  i-an 


a  pets. 


She  took  ho,'i>e  wild,    i' 


animals  and  r!.;rsed  thE:Vi  cB.ck  to'. 
1430  T-   health      E'eat-iv  was  the  only  da 
ushter  of  ;.iiealth'j  parents  i;jho  did  :'.ot  wa 
nt  her  to  so  to  ps^blic  ^r  pr  iyatp\ 
1448  T-   school  .     She  had  a  tuto-  at  hc^vie 


110 


eoMPUTEl 


February,  W82.  Issue  21 


/   but  no  other  childraf".  to  play  with;  -bo 
she  mide  friefids  u'ith  inliViils  '■■ 
1450  T:     Qi,5  sfer^t  r:^L;ch  of  Wer  tl^v,^  5^;ah 
chifis  thtir  rictu'"e5.   '';h i -i!-'!  sha  i-i^td  y^'t 
rs  1-ite?"-  in  har  stories.   ■■•. 
1468  H- 
1470  U  =  *DUC?^:' 

148S  u-nmic 

1490  U^i^BUNHV 

1435  T^Now  it'5  tlir^e  tcr  yc:j  to  raid  5o.! 
e  of  Beatrix  Pottsr^'s  tooVs.     I  Ko=-a  you 
en  Joy  the.-,i.   SHhUE  "^ 
1580  E: 
1518  S:CKILD 

1528  T^Soriietiines  chnd?"-an  did  5 lye  har-  i 
daas.  She  wt'ote  rnany  story  -attar  to  yo 
una  friends  inciudins  fiQ'.-}  sotrias'-. 
1536  T^expeciaily  writtan  for  theii-.  But 
J  this  was  not  whar  inost  of  her  ideas  ca 
me.     Try  asair:. 

1558  tmw 

1560  GR^DRAUS 
1578  GRaURM27ejOT:Al-i2 
1589  GR^TLIRH-9?;DRRl'C 
1599  GF;^TLiRM27Q.:DRAW2 
1G00  GR^URNSSjORhIG 
1610  GR^TURH278:DRfiU2 
1620  GR^TURH90;ORftlJ3 
1630  GR^TLIRM270;DRhU1 
1640  GR^TURN9yjDRAU3 
1650  GR^TURH98;DRftl.i2 
1660  GR;aURbe?0;i:tFflU3 
1670  GR  =  TURW90.;DRAW2 
1680  GR=TURH  278; DRAWS 
1690  GR:TURhe78.;DRHW2 
1780  GR:TURH270;DRhU3 
1710  GR:TURbi9y;DR:HW2 
1720  GR  =  TURH270.iDR:AW3 
1730  GR=TURH98;DRAW2 
1740  GR^TURH9e;DRAU3 
1758  GR:TUR^G78;DRhU2 
1760  GRaURN90jDRAW3 
1770  GRaURH278;0R'AU? 
1780  GR^TURH270.;DRAN6 
1790  GR^TURH90;DRftl'J2 
1880  GR^TURH27fJ;DR:AW2 
1810  GR^TURN45;DRAW3 
1820  GR=TURH315;DRAN3 
1830  GR:TURH278;DRAU3 
1848  GRaURN90jC!R-AW2 
1^50  GR^TURH270;DRAL.J2 
1868  GR:TLIRN90;DR-AU2 
1870  GR^TURM98;[S:hU2 
1880  GR^TLe-1278;DRALJl 
1890  GR:TURH90;DRAU2 
1900  GRaURte78;rjRAU1 


1910 
1928 
1930 
1940 
1956 
1966 
1970 
1988 
1990 


2010 

2020 

2030 
204S 
2058 
2868 
2670 
2088 
2890 

2100 

2120 

2130 

ME.  ■ 

2140 

2150 

2160 

2178 

2188 

2190 

2208 

2218 

2220 

2230 

2240 

2250 

■''■''fS\ 

iil  s   '-• 

2230 
2298 

2300 

2310 
2320 
2338 
2340 
2350 
236.0 

2370 

2390 
2400 


2430 

2440 

2450 
2460 


GR 
GR 
GR 
GR 

GR 
GR 
GR 
GR 
GR 
GR 
GR 
GR 
GR 
GR 
GR 
GR 
GR 
GR 


TURH270;DRAW2 

G02.:DRhIJ2 

TllRN30.iDR;HL!2 

T!JRtt9G;DRHi-n 

TURH270;DRhIJ1 

TURM30;DRAIJ1 

TURN2?0:DPHLe 

TURN270 ;  DRftlJl 

TURN90.;DRhW2 

TURt^27y.;DRHlil 


TURU9e 


TUR?l27y;DRHU3 
TURH90:DRhU1 

TURH325iDRAU4 
TURH270;DRAU7 
PEN  UP:DRAU-4 

TURN 135 
C^S?71S=12:nS+3 
GR^PEH  BL!.£;FILl  50 
GR:PEH  RED  ;DRhU2 
T^ Peter  Rabbit  raany  likes  you.lH? 

PA ^400 
GR^QUIT 


:^DUrK 

GR^PEN  ERASE 

r::!571Vi=i  5:1: 164-4 

GR-PEN  SUE; TURN  55;DPi- 

GR-T-'p!''"^?^ 


-I.'.O 


hr-      1 : ..r-. i 'H  Jf  jr ,-!!<!:■ 
ro  ■  Ti  iO'-  i'C  ■  nr; ■■■:,  ■--i 

rp  ■  "^i  lpij_QM    '"■Q ••''!.■•*' 
v-p,     <  ' Ji-. 1 1    J\  1  ,■  ■— 'v^.n^^iil. 

GR;TURH-45r 

GR:'^UPr45>C 

~o  ■  Ti  in':.  ■    iti'-*  .  r'.r.:--A  -••■ 


GR 

^l'RW-50;DRAli2 

GR 

aURH90;DRAU4 

GR 

T11RN90,;DRAW2 

GR 

•TL!RM-90.:DRAli2 

GR 

TURH-90;DRhW2 

GR 

TURH-90;ORAU2 

GR 

TliR>SO:nRAl44 

GR 

TURN-45;DRhU6 

GR 

TURN-45.:0RAU4 

GR 

TURN-SO; DRhU2 

GR 

T;iRH98;nPftU6 

C— ' 

G0I!J]5.,  16.;PEN  REu;DRAU4 

GR 

TiJRNrO:DRAi;2 

GR 

TUPN90:DRhU4 

GR 

Tl.!R^  190  i  DRhU2  ;  TUR'  U  80 ;  F I LL 

GR 

P^W  BLUE 

GR 

GnTO-30.^.:TnR^;;::fl:FILL5 

24SS  nR  =  G0T0-iS..-l.;FILL5 

2433  GR^'10Tn-9,5;F;L:  4 

2530  GR^i;0Tr:-3.^f;,!F!LL2 

251S  GR^G0T04.S.;FILi,2iG0TC6:r;:FILL2 

252f!  GR^nriTa4..  ir!;FILL2 

2533  GP-GnTne.l2;FILL2 

2543  GR:G0T05.14;FILL2 

2550  GR:GuT013.ie,;FILL2 

256S  GR^GCT0-15.?;F:LL2 

2576  GP^PEN  RED;GCTr:-17,-2M<Tl!RN38:DRHM 

2);TIJRH1S3.:FIU  2 

259S  GP^GCTn-13. -4;4'aLiRH9!;i;0RHU2)iT;jRN'^ 

0.;FIlL2 

2538  GP  ■■  GOTn-15..  -S ,;  4<  TURMSy,  DPfti42 );  TUP^IS 

Q;FILL2 

2603  GR ■■  GCTn-4.,  -2 : 4(  imm : DRAU2 ); ^i  ^tr  h 

0.:FILL2 

26 13  uR  ^  GOTfi  1 ,  -b .:  4(  1\  IRt  m  ■  DPAU2 ) ;  H  !R?  133  ■ 

FILL2 

2623  GP :  G0Tn2 .  -4 .;  4<  TL'Pn33  :  CRAU2 );  TUR^ISS ; 

FIL'l2 

i^b-jU  ur.   ijU  i -.ij  >!>  .i.c:.' i  t. '    ,  c.,-_>-i-j,- ^ii^if-.c 

•"fTrin    '  C' ■  T"Q'' ■_'>"■'■ '"'D-'"  :■•'  .  TT  i^ii !_ ,4 r  .  riQ/ .M  .4 
i-DHU    ur.  -  i  ■.  >K.  •    .7>:.i  .•  :_  f:..ii>i  t  ■  ;  -.  f--  t--r  _■  .=  -^r.  nn  r 

2658  GR-T*.:RN-n5jDRftW€ 

2663  GR  ■  GOTOh..  -8;FILL4 

2678  T:   J5r,;iiYii  Pudd :  a-D.;rv  knc-r^ir  -lou  h 

aus  ba^n  ucrkir.5  W-i.r6,   INttHE 

26oQ  PA -433 

2738  E^ 

2730  D#n=#f^+1 
2743  SO: 28 

2763  Pft:b3 

2773  Ph^SS 

2783  80^13 

2798  P^:63 

2888  30^17 

28 13  PA^bS 

2823  SO: 6 

2839  PA: 68 

2848  SO: 15  = 

2850  Ph:63 

2863  SO: 13  3 

2876  PA: 68 

2880  SO: 17  1 

2838  PA: 123 

2303  ..Kttt1<2):SmSIC 

2918  SO: 

2920  E: 


COMPUTE!  The  Resource, 


World  Class 


Your  ATARI  is  a  world  class  personal  compuler.  But  you 
need  great  software  in  order  to  exploit  its  capabilities. 
And  you  need  information  about  how  it  all  works. 

IRIDIS  is  a  series  of  software  packages  that  will  help  you 
enjoy  and  understand  your  ATARI  more  fully.  The 
programs  are  outstanding,  just  as  you  would  expect  from 
the  people  who  have  published  23  issues  of  the  widely 
acclaimed  CURSOR  Magazine  for  the  Pet  since  1978.  But 
IRIDIS  is  more  than  just  a  collection  of  excellent 
programs.  IRIDIS  »2  comes  with  a  56-pase  manual  that 
has  clear,  detailed  explanations  of  how  each  program 
works.  The  explanations  lell  you  line-by-line  what  each 
program  does,  and  how  it  does  it. 

IRIDIS  and  your  ATARI:  A  winning  team.  World  Class! 


IRIDIS  Al-Fondedit  and  Knolwork  programs. 
Includes  56  page  User  Manual. 
$15.95  Cassette,  $18.95  disk. 
Maslercharge  and  Visa  welcome. 


Published  By: 


theCODE 
WORKS 


Box  550 

Goleta,  CA  93116 
B05-683-1585 


Software  for 
Personal  Computers 


A  coflecrion  of  10  chaFlengfrg  programj  treated  1o  provide  o  unique 
eniertolrmeni  value  —  ond  ?  ptriona!  fauiineij  pfagjQms  wirh  broaiJ 
funciionol   value,   fn  disk   ord  or   coisetie   os  rndicaled. 


GAMES        • 

HELICOPTER  BATTLE 

Seq 

-  16IC 

RAM^Cosietle 

S  9.93 

-  I6K 

RAM   Diik 

M.9S 

HORSE   RACING 

Hep. 

-  16K 

RAM  CoiiBlIe 

9.95 

-I(SK 

RAM/Dlik 

U.95 

KENO 

Req. 

-    8K 

RAM  CoLietle 

9.95 

-16K 

RAM.Diik 

1J,9S 

LIOHTNING  80LTS 

Req. 

—  16K 

RAM   Cnssell^ 

9.95 

ond  REACTION 

-24lt 

RAM   Disk 

H.9S 

THE  MAD  MARBLE 

R.q. 

-    8K 

RAM  Coiietle 

9.95 

-  14K 

RAM.'D:sk 

14.95 

MUSIOAME  (I  Gomel) 

Req. 

-  IdK 

RAM/Coiielte 

9.95 

-■UK 

RAM:'Oiik 

14,95 

SUPERWASTEB 

Req, 

-    8K 

RAM   Coiietle 

9.95 

-16K 

RAM   Olik 

14.95 

TAG 

Req. 

-  16K 

RAM   CooeKe 

9.95 

-  14K 

SAM    Ollk 

14.95 

TRACTOR   BEAM 

Rsq. 

—    BK 

RAM'Caiielte 

9.95 

-14X 

RAM /Disk 

14.95 

WAR   AT  SEA 

Req. 

-  16K 

RAM'CosseKe 

14.95 

-7i>t 

RAM 'disk 

19.95 

(USINESS  • 

CCA   DolQ 

Monoflimanl   Syitem 

Req. 

-4aK 

RAM   Disk 

99.95 

LETTER  WRITER 

Req 

-24K 

RAM   Disk 

19.93 

^m 

_^_ 

®  T,idt,n»rfc  6(  ATARI,  inc. 

c 

|H^^B     DIVISION  OF  CUSTOM  ELECTS0NIC5.  IMC. 

^ 


239  Cxthong«  St.,  ChUopw'.  MQ»MicKi>4«Ht  01013 

tAoz-*ticaTti   &    VISA   AcctfUtd 

•  D*p[er  And  Dijfribu^Dr  Jntjuiflei  Invlttrf 

•  Cte«d  Mondays  —  Op*n  Daily  'Tii  530  —  Ff«io>*  'Til  fl 


J^ 


112 


COMPUTE! 


FebfUOfV  W82.  Issue  21 


Moire  Magic 


Leo  Cerruti 
Syosset.  NY 


This  program  produces  such  beautiful  three- 
dimensional  effects  in  any  of  four  graphics  modes 
that  you  will,  in  all  likelihood,  find  yourself  staring 
at  the  screen  and  shouting  "Hey  look  at  that  one..." 
for  hours  on  end. 

This  program  is  user  controlled  -  you  can 
request  the  density  and  type  of  patterns  you  like. 
Making  use  of  the  "attract  mode"  produces  constant 
variations  in  color  and  intensity  and  you  will  never 
see  the  same  pattern  twice.  There  are  two  pattern 
options  to  choose  from:  center  oriented  and  corner 
oriented.  That  is,  lines  will  emit  from  the  center  of 
the  screen  or  from  the  corners,  as  you  wish. 


By  the  way,  if  you  select  attract  mode  do  not 
touch  any  keys  because  this  will  set  the  "attract 
mode"  counter  back  to  default  colors.  After  each 
complete  cycle  in  both  the  center  and  corner  pat- 
terns the  drawing  will  pause,  select  a  new  line 
spacing,  and  then  continue.  The  longer  you  let  the 
drawing  continue,  the  more  complex  it  will  become. 
You  can  press  CTRL  1  to  pause  the  drawing  at 
anytime,  and  to  continue,  press  CTRL  1  again. 
Pressing  the  BREAK  key  will  end  the  drawing. 


Program  Modules 


Useful  Subroutines 

This  program  makes  use  of  several  subroutines 
which  should  prove  useful  in  many  other  types  of 
programs,  both  graphic  and  nongraphic.  For  in- 
stance; the  subroutine  from  Hues  1060  to  1075 
causes  the  word  START  to  flash  within  the  sen- 
tence. Line  1070  demonstrates  use  of  the  START 
switch,  line  1080  sets  attract  mode. 

When  the  program  is  run,  it  will  prompt  you 
to  press  START  to  begin.  After  this  it  will  ask  you 
which  graphics  mode  you  wish,  modes  3,5,7  or  8. 
Remember  that  you  need  at  least  16K  to  operate  in 
GR.8.  The  next  prompt  asks  how  much  maximum 
spacing  you  want  between  the  lines  drawn  on  the 
screen.  I  suggest  lumibers  between  25  and  40  for 
GR.8  and  15  to  25  for  OR. 7.  The  computer  wilt 
randomly  space  the  lines  up  to  your  maximum.  It 
will  never  give  a  spacing  of  two  or  less,  to  prevent 
fiUing  up  the  screen  with  lines  or  blanks. 

You  are  then  asked  which  pattern  you  want. 
Center  patterns  give  a  cartwheel  moire  effect  while 
corner  patterns  give  more  of  a  three-dimensional 
effect  similar  to  depth  lines  drawn  on  a  flat  plane 
to  give  the  illusion  of  distance.  Either  choice  has  its 
own  special  effects  which  demonstrate  the  Atari's 
superior  graphics  and  color  capabilities.  You  are 
then  asked  if  you  want  changing  colors.  If  you  type 
"Y,"  the  "attract  mode"  is  set.  Then,  happy  viewing. 


LINE* 
0-4 

6-9 

10 
12-14 

1050 
1060-1090 


DESCRIPTION 

Displays  title  andjumps  to  line  1060  which 
instructs  user  to  push  START  to  begin. 

Requests  which  ^aphics  mode  to  use  andjumps 
to  lines  1000  to  1030  to  set  screen  margins  for 
the  appropriate  mode. 

Requests  max  i  mum  nu  mber  of  spaces  to  use 
between  each  tine. 

Requests  corner  or  center  effect  moire  patterns. 
Program  jumps  to  line  16  for  center  pattern 
or  line  600  for  comer  patterns. 

Will  set  attract  mode  if  you  wish. 

Will  display  instruction  to  push  START  button 
and  wait  for  you  to  do  so.  Type  the  word  START 
and  a  space  before  and  after  aninversevideoin 
line  1 065.  Use  normal  video  for  the  word 
START  and  the  spaces  before  and  after  in  line 
1075.  This  will  flash  the  word  START  within 
the  sentence. 


0  ?  "}"=P0SITI0N  9,8  =  ?  "tit    flOIRE  PATTE 
RNS    :m" 

1  POSITIOf-l  9.18:?  "ut    B)'  LEO  CERRUTI 
■mi" 

2  ?  ■? 
3Din'CKl> 
4  GOSUe  IdSB 

€  POKE  752,0-?  "}":?  "WHICH  O^APHICS  MOD 


February  1982.  Issue  21 


COMPUTE! 


113 


E  DO  YOU  WISH:" 

7  ?  /'(!>  rME  3" -7  /'(2;>  f10K  5":'^  ."(3 
:■  MODE  7"  =  ?  ."(4)  riODE  8" 

8  TRAP  S-nPUT  Qn-IF  GTKl  OR  Q1>4  THEN  € 

9  ON  Q1  G03UB  1080. 1010. 1820. 1838 

10  ?  ■■?  "HOW  nucH  SPACING  mxinuM  "^HF-U 

T  SPACE 

12  ?  -?  "WHICH  MOIRE  PATTERN  =  "  =  ?  /'(i;<  F 

ROn  CEmER":?  ."(£>  FROn  C0Rh€R3"  ^NPUT 

P 

14  ON  P  GOTO  ie.608 

15  REM  tn   CENTER  PATTERN  tU 
lb  GOSUB  1050 

20  GRAPHICS  GR+lb^ COLOR  1 
25  GOSUE  588 

39  FOR  H=0  TO  Y  STEP  S 

40  GOSUe  9e0=DRAWTO  X.A 
50  NEXT  A 

60  hOR  B=X  TO  0  STEP  -S 

70  gOSUB  908:DRrWTu  B.Y 

38  NEXT  B 

98  FOR  C=Y  TO  8  STEP  -S 

108  GOSUB  980:DRAWTO  0.C 

110  NEXT  C 

120  FOR  D=0  TO  X  STEP  S 

138  GOSUB  908:DRAWTO  0.8 

140  NEXT  D 

145  G03LB  500 

147  GOSUB  910 

150  FOR  E=0  TO  Y  STEP  S 

160  GOSIE  980:DRHt'TFO  X.E^COLO?  8 

170  NEXT  E 

180  FOR  F=X  TO  0  STEP  -S 

198  GOSUB  988:DRAWT0  F.Y 

288  NEXT  F 

218  FOR  G=Y  TO  8  STEP  -S 

220  GOSUB  900=DRAWTO  0.G 

230  NEXT  G 

240  FOR  H=8  TO  >i   STEP  S 

250  GOSUB  900=DRAWTO  H.0 

260  NEXT  H 

265  GOSUB  910 

270  COLO^  1-GuTO  25 

299  REM 

300  REM  Ut      RANDOM  SPACING      'Ut 
310  REM  U^  MAXIMUM  DETERMINED  tU 

320  RBI  tU  BY  USER 

321  REM 
508  3=INT<  RHOC 1  >:?:SPACE  >+2  ■■  RETURN 

549  REM 

550  RBI  tU  CORNER  PATTERtJS  tU 

551  REM 

688  GCeUB  1050 
620  GRAPHICS  GR+16^ COLOR  1 
625  GOSUB  500 
630  FOR  A=0  TO  Y  STEP  S 


640  aOT  9.0:DRAl<JTO  X.A 

650  NEXT  A 

668  FOR  e=X  TO  8  STEP  -S 

678  PLOT  O.O^DRAWTO  B/t' 

688  NEXT  B 

685  GOSUB  500 

e9Q   FOR  C=0  TO  X  STEP  3 

788  PLOT  0/v":DRhWTO  C.  8  =  COLOR  8 

710  NEXT  C 

720  FOR  D=0  TO  Y   STEP  S 

738  PLOT  O/t' :  DRAWTO  X,D 

740  NEXT  D 

745  G0:3UE:  588 

750  FOR  E=Y  TO  8  STEP  -S 

762   PLOT  X/v'^DRAWTO  8. E^ COLOR  1 

770  NEXT  £ 

780  FOR  F=0  TO  X  STEP  S 

790  PLOT  X..Y^DRAyTO  F.8 

Sm   NEXT  F 

b'05  GOSUB  580 

810  FOR  G=X  TO  0  STEP  -S 

820  PLOT  X.8:uRHt=iTu  G/^  COLOR  8 

330  NEXT  G 

848  FOR  H=Y  TO  8  STEP  -S 

850  PLOT  X..3:DRAWT0  8,H 

860  NEXT  H 

876  COLOR  1: GOSUB  910: GOTO  625 

900  PLOT  C1a:2:  RETURN 

904  REM 

905  REM  tU   PAUSE  BETWEEN  CYCLES  '^V^. 

906  RB1 

910  FOR  TIME=1  TO  488= NEXT  TIME  RETURN 

949  REM 

950  REM  Ut   GRAPHICS  LIMITS  tU 

951  REM 

1800  GR=3 :  >i=33  ■- Y=23  ^  01=19^ C2=l  1  ■  RETURN 
1010  GR=5  ■■  X=79  ■■  Y=47 :  Cl=39  ■  C2=£3  ■■  RETURN 
1020  GR=7  ■■  X=159  =  Y=35  ^01=79  ■■  C2=47  ■  RETURN 

1038  GR-8 ■■  X=319  ■■  Y=19i  ■■  Cl=159 ■■  C2=95  ^ RETUR 
N 

1040  REM  nX  SET  ATTRACT  MODE  Ut 

1041  REM  nt        AND  START  tU 

1042  REM 

1050  ?  :?  "DO  YOU  WANT  CHANGIhC  COLORS  < 

Y  OR  N)"  =  INPUT  C| , 

1055  ?  =?  "HIT]  CTRL    IOTO  FREEZE  OR  R 

ELEASE      PATTERN     AT  m<  TIME" 

1060  C=PEEK(84> 

1063  POKE  752. 1 

1065  FOR  P=l  TO  58= NEXT  P^POKE  84. C=?  " 

HIT  I  5TART1  TO  BEGIN" 
1070  IF  PEEKC 53279 )=6  THEN  1080 
1075  FOR  P=l  TO  50: NEXT  P-POKE  84. C^?  " 

HIT  START  TO  BEGIN" ^GOTO  1865 
1080  IF  C$="Y"  THEN  POKE  77.123 
1090  RETURN 


114 


COMPUTEI 


February.  1982.  issue  21 


Put  A  Rainbow 
In  Your  Atari 

Fred  and  Doug  Tedsen 
Sonoma,  CA 

You've  probably  seen  programs  that  display  128 
colors  on  the  Atari.  They  are  usually  interesting  to 
look  at,  but  what  do  you  do  with  them  after  you 
have  rim  them  two  or  three  times?  Wei!  here  is  a 
program  that  displays  a  moving  rainbow  of  all  128 
colors,  and  the  techniques  could  easily  be  used  for 
dramatic  title  screens  in  your  own  programs. 

The  program  begins  by  drawing  the  word 
COLOR  in  large  block  letters  on  the  GRAPHICS  7 
screen.  This  is  performed  by  the  subroiuine  at 
lines  1000  to  1200.  While  the  letters  are  being 
drawn,  the  program  is  doing  a  graphics  fill.  The 
letter  outline  is  drawn  with  color  register  1  (con- 
trolled by  SETCOLOR  I)  and  the  inside  area  of 
the  letters  is  filled  with  color  register  0  (COLOR  1 , 
SETCOLOR  0).  Lines  2000  through  2500  contain 
the  data  points  for  drawing  the  letters. 

The  program  now  goes  through  a  color  changing 
sequence  (lines  1 10-190).  This  section  was  included 
to  demonstrate  how  colors  can  be  controlled  inside 
and  outside  of  the  fill  areas  and  also  to  heighten 
anticipation  for  the  part  that  follows.  First  we 
randomly  change  the  colors  inside  the  letters, 
leaving  the  background  black.  Next  the  background 
colors  is  changed  while  the  letters  remain  black. 
And,  finally,  we  change  both  the  letter  and  back- 
ground colors  independently.  Notice  that  the  letter 
outlines  remain  white  throughout. 

NowThe  Fun  Part 

Now  we  come  to  the  fim  part.  At  the  beginning  of 
the  program,  the  subroutine  at  lines  3000  to  3040 
was  run  to  load  the  machine  language  color  rainbow 
generator  into  the  strings  C;UP$  and  CDOWN$. 
These  are  now  used  to  produce  the  rainbow  pattern. 
The  pattern  is  first  set  moving  up  the  screen  within 
die  letters,  widi  a  black  background.  The  pattern  is 
then  put  on  the  background  with  solid  color  letters. 
These  steps  are  then  repeated  with  movement  down 
the  screen,  just  to  shcjw  that  we  can  go  both  ways. 

So  how  does  it  work?  Briefly,  the  POTO  regis- 
ter is  read  and  the  value  obtained  placed  in  one  of 
the  playfield  color  registers.  Since  the  pots  are 
continually  cotmting  down  to  zero,  this  value 
changes  every  scan  line.  A  write  to  WSYNC  makes 
the  change  occur  at  the  end  of  a  scan  line,  resulting 
in  solid  lines  across  the  screen.  Movement  is  ac- 
complished by  adding  or  subtracting  the  value  of 


the  l/60th  of  a  second  frame  counter  to  the  POTO 
value  before  writing  it  to  the  color  register.  The 
write  is  directly  to  the  registers  in  CTIA  because 
the  OS  shadow  registers  are  not  copied  tmtil  vertical 
blank  and  therefore  would  do  nothing.  The  as- 
sembler source  listing  is  included  for  reference. 
Notice  that  there  is  a  direct  correspondence  be- 
tween the  source  listing  and  the  BASIC  data  state- 
ments at  lines  3 100  to  3280. 

Modifications 

There  are  several  things  which  you  can  do  with  this 
routine  to  change  the  display: 

1.  Parameter  two  in  the  L'SR  statement  is  the 
time  in  seconds  that  the  routine  is  to  be  run. 
Thus  X  =  USR(ADR(CLIP$),4)  will  display  the 
pattern  moving  up  the  screen  for  about  fotir 
seconds. 

2.  You  can  affect  any  of  the  five  playfield  color 
registers.  To  do  this  you  can  change  either  the 
DATA  statement  at  line  3  1 80  or  the  machine 
langtiage  string.  The  valties  to  use  are  22,  23, 
24,  25,  and  26  for  color  registers  0,  1,2,  3,  and 
the  backgroiuul.  respectively.  For  example, 
changing  line  3 1 80  to  DATA  14 1 ,26,208  will 
affect  the  background.  Line  240  demonstrates 
how  the  string  mav  be  changed  to  give  the 
same  result. 

3.  You  can  obtain  a  stationary  rainbow  pattern 
by  changing  line  3 1 70  to  DATA  234,234 
(NOP's).  Don't  try  to  use  CDOWN|  if  you  do 
this,  however.  A  better  way  would  be  to  change 
elements  12  and  13  of  the  string. 

4.  For  those  of  you  with  Assembler,  there  is  a 
myraid  of  patterns  which  can  be  generated  by 
using  AND  and  ORA  before  writing  to  the 
color  register.  You  can  create  patterns  with 
large  bars  of  color,  with  small  bars  of  different 
shades  of  the  same  color,  or  with  some  combi- 
nations —  a  rainbow  of  pastels. 

5-  While  the  machine  language  routine  is 
running,  your  program  can't  do  anything  else. 
Though  we  haven't  tried  it  yet,  it  should  be 
possible  to  incorporate  the  logic  in  a  display 
list  interrupt  routine.  This  would  allo^v  you  to 
do  things  such  as  ha\'ing  the  pattern  roll  down 
the  screen  with  a  curtain  effect. 

There  are  a  couple  of  things  to  watch  out  for 
when  running  the  program.  A  time  value  of  zero 
will  run  the  rainbow  routine  for  about  four  minutes. 
If  you  accidently  do  this,  you  will  have  to  press 
SYSTEM  RESET  to  get  out.  .A.Iso,  unplug  vour 
paddles  from  game  port  1  to  get  the  prcjper  rainbow 
effect.  You  might  want  to  plug  a  paddle  in  later  to 
see  the  effect.  It's  kind  of  interesting. 


$729.00 


$65.00 


i@fr;Q!Ri 


from 


SOFTWARE        STREET 

We  carry  a  wide    variety  of 
hardware  and  software  to 
accommodate  all  ATARI  needs. 

Call  or  write  for  FREE  catalog 
SOFTWARE  STREET 

3  392  Clipper  Dr. 
Chino,  CA  91710 
i7}4)  591-3091 

call    for   shipping  chnrne-; 


h 4 

$4  29.00 

A 

ATARI 


1  REM  COLUK  kAIHBOW 

2  REM  FRtu  kHD  DOUG  TEDSEH..  OCT  1981 
18  DIM  D$(3::v.ClF*(32).CD3l'iH*<32) 

£0  HS=4:hT=15 

38  LUSUB  3809 

4fi  G&--iiH  laPiP! 

50  FOR  1=1  TO  1008: NEXT  i 

106  H=y 

110  SEiC^OLDR  0 ..  I KT  ( RHO<  9  ;■;?!£;'  ^  2"^  I  HT(  RHDC 

120  FOR   1=1  TO  i50  =  HEKT   rH=H+ MF  H<HT 

THEH  GOTO   110 

130  SETCuLOR  0.: 0.0:^=0 

140  C=INf(R^iD(0;^*lb):  I=lNT(RHD<y)t8>$2  =  S 

ETCOLOR  2 .  r: .  I :  SET  "'OLnR  4  ■'''■<  I 

150  FOR   1=1  TO  150  =  reu    MJ=H+1:IF  H<HT 

TfCH  GOTO   140 

160    ri=y 

170  C=INT(RrD(0)Sib):  I=IriT(RND(0>SS)*2  =  S 

ETCOLOR  2..C.-I:SETC0LuR  4,:C;  I  ^SETCOLOR  6.: 

IMT(  RfiD(  0)$ib),  2:nHT(  RnD(  0  :'IS) 

180  FOR   1=1  TO  120:HEKT  I=N=H+1=IF  H<NT 

T^CH  GQTQ   170 

190  SET  COLOR  2..  UAi:  SET  COLOR  4.-0  =  0 

210  SETCuLOR  042..  6 

220  CLP$(  i  5 ..  1 5  )=CHK$(  22 ) 

£30  X=USR(ftDR(CUPf).^IS) 

240  CUP*a5.  i5)=CHRf(2b) 


250  K=USR(  AOR(  CiJF't ) ..  HS ) 

260  SETCOLOR  0.3,- 4 

270  C0OwH$(  1 5 ;  1 5  )=Cfi=:*(  22  > 

230  X=USR( ADR< CDuUNi ')^\•^) 

290  CDni'JH$(  1 5 ..  1 J  )=CHR*(  2b ) 

30y  X4JSR( ADR( CDOUH$ ')A-B') 

316  SETCuLOR  6..  7/2 

400  FlK   1=1  TO  1900:  NEXT  itGOTO  48 

1000  GRhPHICS  7+ lb 

1010  SET  l;OLuR  O  ..  6 ..  0  ■■  SETCOLOR  1 ..  8 . 1 4  ^  SETC 

OLOR  2 ;  0 ..  0  =  SET  COLOR  4 . 8 ,.  8 

1020  CitOR  2-FC0L0R=l 

1030  F£STOR£  2010 

1100  R€rD  D-MF  HSD::D*Kb4  THEN  GOTO  118 

0 

1110  IF  Df-="p""  im\  READ  R0t'i..C0LL™  =  Gnsu 

B  IZ^i^PLOT  CGUJMH.-ROy^GUTO  1190 

1120   IF  Df-="0"  THEN  READ  RLiR;IGIH..CORIGIH 

:G0TO     1100 

1130   IF  D$="END"  im\  RETURN 
1140   IF  D$<>"F"  THEN  OJTO   llOU 
1150  READ  Ril-L.CCL1JMN:G0SUB  UW^FiISITION 
COLUm..  ROW  ■•  F«E  7b5.  FCOLOR 
nee  XIO   18.#b..8,0..  "S:"=F'LUT  COLLir-tl-RLiW  = 
GOTO  1100 

1180  ROH=UAL(D$>:REhD  ayjMH^GOSie  1200: 
DRAi^JTO  COLUrtL.  Run :  GOTO  1166 
12-00  F£W=Rul^HRijRI  GIM  ■■  D3_111N=CGLiJrf HCCtRIG 


116 


COMPUTEI 


FebruOiv.W82.  Issue  21 


itJviW     Kill  !        U 

£010  &hTh  0j1Q..2 

S02fi  DATA  P..  1.9.1. 19;!,: £3. 5. 25. 9.. 5?,  15.. £ 

7. 15. 1ST.  12.- 18. F.- 10.  lb.  10. 12. 12. 10.29. 1 

g.>31..  12_ 

2038  Dr  !  h  P  ;  2b ;  1 8 .  2d  .  27  ■  32  .■  £7  >  iS  .•  'Z'j  .■  -iS ..  £ 

3.:40.i9.40.9.F.3S;5..F.=  3b..3.-F;32.1.F.9.1 

2040  DhTh  F;5;3,.F.3.5T,i,9..p..3L12.F.31 

.i6/F.29.=  i3..F.2b.l8 

2110    Dr^Tft    0;iS.32 

~7       *^  uT        '"v^       "7 '"'      """'"7        ■"!  M        i   '_i       -^  '""■*       '_i 

f  .  -I'^Z'  !  kl-J  .■  ■ ''C  .■  ^J'  .•  Ht' .'   1  ^  ■  "-'  .  J 

8'F-3L|b.3l' 12^2949^12' 10'  li.  12 

2140  DftlA  P.40.9.-i-;  i9.-5;r.3b-3-F-32. 1  .h. 

9.1;F:5..3.T,3-5.F;1.9 

2210  DATA  0.-£b.b£ 

2228  OATA  P.  1. 1: LIS. 32.- 18.32. 

0.1..F.1.1 

2300  REM   ''0'' 

£310  uATfH  0' 34.1 92 

2320  DATA  P.  1.9. 1. 19. 3.: 23. 5. 2= 


2330  DATA  P.- 10- 12.-F.  10.  Ib.-r..  12. 18.h.29: 1 

o.  r  .  -ii.'  ib.'Ol.  ic<  i:^.'  i'_'-  ili.-  i".'.  iv.  ii 

2340  CAT  H  P ,:  40 .  9 .  F :  38  .^  5  •  F ..  36  .■  3 .  F .  32  j  1  ,■  F  ,■ 

9..1..F.5.3.F.3.5.F.1.9 

2400  REh    ^'R" 

2410  DAm  0,42. 122 

•-i.<--irj     n..--.T.-..     n    <      f      i      <  O    T     ""T    =    ■".=■    ■li    ■""     -1=    ■" 
-;     J  Q     "iC    .-iH     ■-.-J    .-i.-,    .-,i-i     ,i.-<     --7 

2430  DATA  40=  18..F.. 21. 10.40. 10j40. 1.. P.'9j1 

8.F,9..  Ib.F.,  IL  18.F.  13..  IS.F.  15.  IS.^  15. 10.^9 

,.  10..  P.40..  1  .F.a.i 

25yy  DA  I  P.  hNu 

3008  RESTORE  3190 

3005  FOR   i=l  TO  32 

301 0  READ  C  ■■  O.P'i-i  I  )=CHR:f  ( C ) 

3020  b€KT   I 

3030  C:uOWM$=CUPf ;  CD0i4N$(  12.12  >=CHRf <  229 ) 

3040  RETUkm 

3100  [^ATA   104 

3110  DATA  104 

3120  lShTA  104 

3130  DATA  72 

3140  DATA  162.57 

3150  LfhTA    lb0.»0 

3160  DATA  173.0..  216 

3170  DATA   181  .=  £0 


/^ 


^ 


^^Q 


SCJFT'WJM^ii:   for  yaur 

ATARI  Aoorsoo 


EARTH5IGHS:  YckjV*  Dur.g  ft 4-4«»n#g  to  old  ■im»  a.nil  ajr.fciliDn*  thi»  ye*r,  TRl* 
iTLighl  bp  tNa  id«4l  tim*  To  du*t  0*f  TRit  ole  pfog'*m  f»coia«f  i,nd  joi^trl  the  n»wly 

FTHfJIKAL  FlKAliCt  SYSTEM  QK  CASSETTE 
Tfiis  ca,ssettF  ttwe  P?S  has  e^erjtnmg  ana  more,  than  -mb  BIG  BOYS  geT  on  intif 
CI 5k  drives' 

U..j:itai>ft;  tl*fiZ- 

FIRE5TGH5;  You  "iU  t*«  4dv^fage  eF  .-nonpy  making  oppor  EL;nitti«  tfiis  ytir.  Tne 
9*1^9  will  be  af  H^t  ♦**>  -EDmi-ieASj'-go  Mt^i,  wnl«*»  j^dj  make  il  your  &usin««»  Eo 
itcv  the  outgo.  Tojr  pUnntng  is  voind.  Cut  pQiSlbly  CDuld  utt  A  Oefi«ri0>tile,  ui.«ful 
tool  JtXh  At,  A  fttrio-tlonr, 

rtqaRirmSTERPHQGHAM 
t^jt  TniPl«ir>i  An  in^irttory  cont/cl,  «i*tps  TTD  total*  ay  ^^•  mwitn.  Mill  print 
invoices  or  receipts  ard  c*n  u»e  *u  Cfll-  Or  3<i  col-  prmttr.  Jll^ii*  much  marm,  all  ir  one 
DOidf rful  package' 

fiecm^et  jl  If  jtt  ;:k  ^3  a  31^.<-5FECIA.[^ISTRQ_PFF£R  Jlfr^.J:^ 

HTKPSIGH^;  Ynii  trt  in  th*  rr.iid'.e  of  SDfne  personal  Ji^COvwrifti  ttiat  will  cns^ge  in,e 
course  of  ytkjr  life-    Hiw  intfre^ts  developi    i>ie  of  iheT  rrrigTitUB  t^B  Hbm 
5H0OT-EM-UP  SPACE  GAME  Dy  Spectrum  Computer 
GftLACTIC  CHASE- 
A  wfry  ractQ  ■irC4d«  »p«»  [i4ttle+  cSore  totally  in  rrALh.  lan|].  Thlt  ga<r«  lA  Avlllablt 
0"  tape  0'  dith,  and  r«quim  at  least  UK  rticmary, 

WATERSIGKS:  Tou  riav*  iuppoft  no-  for  imprpwing  jfour  pQMert  of  persuasion  ana 
Icrg-range  planning.  You're  prepared  Ifl  ffiftH  cnalleng*&  ri»aa-on.  so  why  net  iry 
O'j'  Sp?C!Sl  Of  Tfte  Month,  a  si.per&  iQ,  hi. res.  calcr  flrapfiita  and  saundr  3  ail* 
ratation,  tpace  gaim*-  Thlf  gvne  nat  only  challenB**  yaur  reaction  tirr.ei  but  yauT 
strategic  QlanntnQ  aDllltm  too.  Too  Must  KDT  Kia*  QlI  on  thii  new  release  from 
Hdri;Dr>  Siitmitationi.' 

pHAPQHHAVIK  I 
Tni^  oan^e  fpularl^^  litis  for  tj^.??,  tiut  for  thii  eontA  QMJ.Y^_%SaiJ.V 


High  Country  Hicrosystemi 
HeiT«Qf  trw  Mfri-4re  HOTLINE 
P.a.SQ«2n4?  'Den^eirCo  60221 
21  HH.  Ordefhne  (303>  477-9C3i 


2-90  ^hipping  and  tNanCling 

Add  1 .74  for  COD  Colo.  Rh.  add  £.5%.  tai 


free  catalog  axailalil* 


'S\ 


-i^ 


SOFTW  ARE  FOR  YOLU  16K  TRS80  COLOR 
MODEL  I,  lU,  ATARI  400/800,  APPLE  II 


Do  vou  Ictliii*  all  the  innovative 
^vav5  of  usinc  BASIC  tomtnands.' 
Thr  «aff  ai  chr  PnipramrfKT'fc 
Iminuir  hsi.-t  spcnr  ?>  rrxinThv 
lirtianintf  a  *ei  of  pt (.igram^.  explain' 
inp  L'vrrvthins  ihr  manual*  omil, 
AniJ  Tnu*.h  rrhire 

The  Pft>itTammcT\  Program  Itad^- 
vau  ^tcp  bv  scrp  ihrnuph  [ht  Hinds- 
mencak  of  pfj:)pr3mm]nE  voui  com- 
putcT.  THcn  vou  explore  iht  finer 
points  .  multiple  liit^p^.  tjueuei, 
■SUtki.  game  rnyr^mTning.  s^rl^, 
irieg*.  Kv^W^an  <ii:ii..  anJ  memory 
Mivcri.  All  thgK'  mc^h■xj^  mak^' 
voqt  pfniffamminn  lask*  easier  and 
more  cH'ii.icrt 

Difficult     program*    arc    huilr 
V^fnrc  vour  icrv  rvp-,  and  Jesifined 
w  vou  Ic-arn  ai  vour  iiwn  ^^^etdl 
A  must  for  everv  owner  of  a 
microcompuicr  (S40J. 


appletree 


||IIA6*TARJ 


On  ca5*eTie  or  diskntc".  our  mspaimcs  arc  dt^ipncd  c\- 
pliLitlv  Um  voui  computer  In^ludeii  e\rr\'  mtmth  art* 
!»-  lO  rradv-tO'load  pn^vraTTis  raniiini:  from  fia^rl[c^,  fitimt" 
L-ntcnaiiimeni.  and  permnal  fitiantc,  10  morr  of  mjr 
unique  "iraihtnc"  pfofiram!-.  VCr  uill  ft1«ii  kftp  vou  in- 
t!>rTntd  utl  ;il]  rht  laiCM  produiC''. 
i.\iT  Februarv  issue  will  imludc 

1.  golf: 

Z.  Sea  ^'ar  with  l^^^phl■.^ 

li.  SthoJuic  IlMO  Linp'Form 

4.  Math  TeH  with  graphuA 

T.  DcviMon  MaktT  -  help*  maiiv  deviMons 

fr-  Seif-Pri^pramininp  Prtivt-ims. 

7.  Ciinvt'nmjL  Pri>pram«. 

,  ,  .  and  ai  aiwavs  vou  fwi  our  kA'^%  ^ommitrnt-nt 
to  rKLcIlcncc  and  -^rrvKc 

iBaijL  lii'-ui'*.  arc  availahk-'l 
Uiicr    iwuc*    will    include    hai-ksamfnon.    foreuastinE. 
*iixk  market,  and  manv  morr.  The  r'^c  r*'''  *ii^np- 
rion  to  TRC.  APPLHTREE.  or  MAC  SAT  AfU  1^  550  per 
vi-ar.  jiO  fvr  ' :  veay,  and  JK""  Tin  ^  trial  i^^ue. 
Don'[  miu  out  on  our  Fcbnurv  iuue. 


Our  complcic  home  fitian^^iai  patkapc  With  thnk  tnaitiien.inLe,  itiktimf  net  worih  siait;mcnt>, 
Kraphii;^:.  budjicTinf:,  maihnc  list,  and  flppoinimcnt  kll  l..■!k■nJar^  l^  iivailaHr  lor  onlv  >?0  or 
ABSOmiELY  FREE  unh  anv  Sx^  order.  Pjrthase  Wuh  aKnt'  psikact?^  and  vout  net  i.ost  i- 
onlv  ?;!  6rDER  TODAY! 


Hf 


THE  PROGRAMMER'S  INSTITUTE 


A  Fuiurehouse  Compan\ 
r.O.  Biw  Bl?]  Dcpi.C 
Chspcl  HiU,  N.C.  27514 
l^mi  4f"9';i95 
WC  &1.  \.  isn  ^'cltomc 
L,  Propammer's  Projrram 
(I)     Computer  Model 


natnt-    _ 
ndJrf^^ 


-  Year  Suhjcriprian    __'  '■':  Ytar 
—i  Cassette 


J  ikitfi    ^  Tria 
'Z  Diskcrre 


Issue 


TRC  and  rhe  pic^amnwr's  propam  arc  trademarks  of  Futtirehnusc. 

*An  software  available  on  casietie  for  the  TRS-80  ModcJ  1,  III,  Color  Ext.  Bask,  Atari 

400/eOO.  On  diskeric  for  the  Model  111.  Apple  II.  (For  diskcnt  add  SI  per  month). 


FebfuQfv.  1962.  Issue  21 


COMPUTil 


117 


3180  DftiA   141.22.208 

3190  DATp  14L  18.212 

3200  &ATA   136 

3210  LiAm  208.242 

3220  imiPi  232 

3238  DATA  2£€'.237 

3240  DATft   104 

?250  G-ATA  5S 

32b0  DATA  233.:  1 

3278  DATA  298.=  22*5 

3280  DATA  % 


0100; 

;        RAINBOW  COLOR  GENERATOR 

QUO 

;       Fred  and  Dou^ 

Tcdsen 

0120 

0130 

RTCLOK3 

= 

$14 

0140 

COLPFO 

# 

SDOte 

0150 

POTO 

= 

$D200 

0160 

WSYNC 

= 

SD40A 

0170 

; 

0180 

PLA 

Throw  out  no.  arguments 

0190 

PLA 

Throw  out  high  order  byte 

0200 

PLA 

Get  no.  .seconds  to  run 

0210 

LOOPA 

PHA 

Pushon!ilack 

0220 

LDX 

#57 

57x256  is  about  1  second 

0230 

LOOPB 

LDY 

#0 

0240 

LOOPC 

LDA 

POTO 

Read  Pot  0, 

0250 

ADC 

RTCLOK3 

add  value od  1/60  timer. 

0260 

STA 

COLPFO 

and  put  result  in  color  register  0 

0270 

STA 

WSYNC 

Wait  for  end  of  scan  1  inc. 

0280 

DEY 

0290 

BNE 

LOOPC 

0300 

DEX 

0310 

BNE 

LOOPB 

0320 

PLA 

Get  second  counter  from  stack. 

0330 

SEC 

Subtract  1  from  counter 

0340 

SBC 

#1 

and  branch  until  zero. 

0350 

BNE 

LOOPA 

0360 

RTS 

—     ALL  ATARI  s  HARDWARE  1 5  %  -  25  %      111 
OFF  LIST  PRICE  y\K 

OUR  PRICE        SAVE 

Atari  400  W/16K $320  20% 

Atari  800  W/16K $810  25% 

Atari  410  cassene $67  25% 

Atari  810  disk  dnve  $480  20% 

ATARI®  ACCESSORIES  10%- 20%  OFF  LIST  PRICE 

8K  Memory  Board  $45         10% 

1 6K  Memory  Board $80        20% 

Joysticks  (pair) $17         15% 

Paddles  (pair) $17         15% 

^      TocrdCT  Cdil  617.961  3080         PtUS  10%-20%  OFF 
..^--■v.  Ask  fcf  mail  ofdCT,  Of  ^ATiie         ^^  ATARI'!  SOFTWARE 

The  Bit  Buchet    also  3rd  part/  hardware 

1355  Washington  Stisct  (Rt  16)  AND  SOFTWARE  AT 

^-      rf7%^^'^""*'  COMPARABIX  SAVINGS 


at 

DISCOUNT 

PRICES 

from 


ADVENTURE  INTERNATIONAL  rag.  retail 

Advenlures  I  Ihru  12  each(T) 19.95 

Slar  Trak  3.5  (Tl 19.95 

Lunar  Lander  (Tl 19,95 

Galactic  Empire  (T) 19.95 

ATARI 

Assembler  Editof  (Cl , 59.95 

Aslerol()s|Cl 39.95 

Arari  Word  Processor  (Dl 150.00 

Conversalional  Spanish  |T1 59.95 

Missile  Command  (C| 39.95 

Scram  (T) 19.95 

Slar  Raiders  (C) -....49.95 

AUTOMATED  SIMULATIONS 

invasion  Onon  (Tor  0]       24.95 

Rescue  at  RigetlTor  D] 29.95 

Star  Warrior  (T  or  D| 39.95 

AVALON  HILL 

Conllict2500  (T) 15.00 

Empire  ollheOwermInd  I T) 30.00 

TanMics(T) 24.00 

Midway  Campaign  (T) tS.OO 

C  E  SOFTWARE 
CCA  Daia  Managemem  (D) 99.95 

CODE  WORKS 

lridis*i(Tl 9.95 

lri(lis*1  (0) 12.95 

lridis«  (T) --- 15,95 

lriiJi5#?(D) 1B.95 

CRYSTAL  COMPUTiR 

Cryslalolds  (D)   , 29.95 

GiamisCaslle  |D|  49,95 

Fanlasyland  2040  A. D  (D) 69.95 

Proleclor  (D)  39,95 

Sands  ot  Mars  (01 39.95 

DATASOFT 

Le  Slick 39.95 

Lisp  Interprelei  (D) 14995 

Texl  Wiiard  IDI 99.95 

OYNACOMP 

Flighi  Simulalor  (T) 17.95 

Rings  ot  the  Empire  (T)     , 16.95 

ON-LINE  SYSTEMS 

Jawbreaker  |D) 29.95 

Soil  porn  Adwaniure  (D| 29.95 

Wizanij  Princess  (0) 32.95 

OPTIMIZED  SYSTEMS  SOFTWARE 

Basic  A+  |D)    ,  80,00 

OS/At   (D|,  - SO.OO 

PERSONAL  SOFTWARE 

ViscalclDl 199.95 

QUALITY  SOFTWARE 

Assemoier  (T) 24,95 

OS  Forth  (01 79.95 

Slarbase  Hyperion  (T) 19,95 

UNITED  SOFTWARE  OF  AMERICA 

AiaiiWorld(D|  59,95 

Survival  Adventure  [D)  24  95 


OUR  PRICE 

15.95 
15.95 
15,95 
15.95 

47.95 
31.95 
115.00 
47.95 
31.95 
1i,95 
39.95 

19.95 
23.95 
31.95 

12.00 

24.00 
19.20 
12.00 

79.95 

7.95 
10.35 
12.75 
15,15 

23.95 
39.95 
47.95 
31.95 
31,95 

31.95 
119.95 
79.95 

14.35 
13.SS 

23.95 
23.95 
26.35 

70,00 
70.00 

149.00 

19,95 
S3.95 
15.95 

47.95 
19.95 


(C)  ROM  CARTRIDGE       (D)  DISKEHE       (T)  CASSEHE  TAPE 

REPRESENTING  OVER  30  COMPANIES  WITH  400  + 
PROGRAMS  AND  HARDWARE. 

Write  for  a  FREE  cataiog  to: 

COMPUTER  HOUSE 

P.O.  Box  369,  Dept,  10,  Mammoth  Lakes,  CA  93546 
(714)  934-6538 

Ttfffli:  FOH  FAST  DELIVERY,  lend  cerlKltd  chicki,  manly  ordirt  Of  Vlti  or  MiiltrCird  numbw 
■nd  eijilrtlliin  dm.  Pirienil  chtckt  rtquira  3  trnkt  to  diir.  ADO  SI. 50  tor  poilagi,  Qrilirs 
over  S1D0.90  wa  ply  ahlpplng.  All  lorelgn  ordari  idd  S10,00,  CALIFORHIA  nildinti  add  6K 
tax.  PrlcBS  iub|flct  to  i:titngt. 

■  ATARI  11  Iha  tridimirk  ol  Atari,  Inc. 


118 


COMPUTEI 


February,  1982.  Issue  21 


Part  II: 


A  Small  Operating 
System:  OS65D, 
The  Disk  Routines 


T.  R.  Berger 
Coon  Ropids,  MN 


Editor's  Nole:  Part  I  appeared  last  month.  Here,  the 
author  presents  a  map  of  the  disk  routines.  —  RTM 

Let's  turn  to  track  zero.  Exactly  one  ms.  after 
the  index  hole  a  two  byte  address  is  recorded  on 
the  disk  in  high  byte-low  order.  This  address  is 
read  by  the  ROM  on  boot.  It  is  ti\e  start  address  for 
loading  track  zero  into  memory.  Next  comes  the 
numbei-  of  pages  in  track  zero.  Finally,  that  many 
pages  of  data  are  written  on  the  track.  There  are 
no  track  start  or  stop  markings.  After  track  zero  is 
loaded,  the  computer  always  jmnps  to  $2200. 
Hopefully,  track  zero  has  been  loaded  in  that 
vicinity.  It  would  appear  that  OS  I  did  not  think  the 
track  zero  format  over  very  carefully. 
Subroutine  Descriptions 

Most  of  the  disk  routines  are  self-explanatory. 
Because  these  routines  are  far  more  involved  than 
those  in  the  kernel,  many  more  flow  charts  are 
needed.  Let's  rim  through  the  memory  map  in 
order,  commenting  on  special  properties  of  certain 
subroutines. 

The  timing  routines  at  $2678,  $267A,  and 
$26A2  are  independent  of  the  system  clock.  The 
wait  time  in  the  roudnes  at  $2700,  $289F,  and 
$28A4  should  be  divided  by  7"  if  the  system  clock  is 
TMHZ. 

OS65D  does  not  use  binary  track  numbers, 
but  BASIC  does.  Thus  BASIC  uses  $26A6,  but 
OS65D  enters  this  routine  at  $26BC  with  the  BCD 
track  number  in  the  accumulator.  With  a  binary 
track  number  in  the  accumulator,  this  routine  may 
be  entered  at  $26A9.  It  will  move  the  disk  head 
over  the  correct  track  after  some  error  checking. 

The  sequence  beginning  at  $2728  may  be 


viewed  as  the  standard  startup  to  read  or  write  a 
track  or  sector.  It  puts  the  head  on  the  disk,  finds 
the  index  hole,  then  initializes  the  disk  data  ACIA. 

The  EXAMINE  command  uses  $2739  to  load 
the  entire  contents  of  a  track  into  memory  without 
regard  to  error  checking,  track  formatting,  or 
sectoring.  This  type  of  command  is  only  possible 
with  the  asynchronous  data  format  used  by  OSI.  If 
you  crash  a  track,  this  command  can  prove  invalu- 
able in  retrieving  what  may  remain.  I  view  this 
routine  as  a  utility.  It  should  reside  on  the  disk  and 
not  in  memory,  unless  needed.  The  initialize  rou- 
tine at  $2768  used  on  a  full  disk  falls  in  the  same 
category.  Such  programs  as  these  should  be  tran- 
sient, i.e.  only  called  when  needed. 

The  major  "Save  a  Sector"  routine  begins  at 
$27D7.  Il  uses  the  data  in  $265E-S266I.  Most  of 
OS65D's  disk  data  is  stored  in  page  zero.  Because 
Zpage  is  swapped  out  when  BASIC  comes  in,  the 
most  important  data  is  repeated  in  $265C-$2662. 
BASIC  passes  its  values  to  these  latter  locations. 
LOAD  and  SAVE  routines  must  then  move  this 
data  to  Zpage.  Since  OS65D  can  put  information 
directly  into  Zpage,  it  puts  the  save  vector  into  $FE, 
$FF  directly,  entering  the  Save  routine  at  $27E1 . 
Except  when  SAVE  or  CALL  are  used,  all  saving  is 
done  in  Sector  one  for  1 2  ($OC)  pages  on  8"  floppies 
and  for  eight  pages  on  minifloppies.  After  a  write, 
the  sector  is  reread  and  compared  with  memory.  If 
the  comparison  fails,  the  sector  is  reread  again. 
This  may  occur  up  to  foin^  times.  If  comparison 
still  fails,  another  attempt  is  made  to  write  the 
sector.  If  comparison  fails  after  four  rereads  again, 
the  operation  is  aborted  with  Error  #2.  To  my 
recollection,  I've  never  seen  Error  #2  occur.  It 
might  happen  on  an  old  worn  disk,  on  a  midnight 
special,  or  with  a  very  dirty  head. 

The  major  "Read  a  Sector"  routine  is  .if295D. 
It  uses  data  in  $265-E-$2662.  Again  OS65D  may 
enter  this  routine  at  $2967  if  the  load  vector  at 
$FE,  $FF  has  been  .set.  This  program  tries  to  read  a 
sector  seven  times.  The  only  error  check  (other 
than  sector  seek  eirors  which  abort  immediately)  is 
a  parity  check  for  each  byte.  If,  after  seven  tries,  a 
read  still  fails,  then  the  head  is  moved  down  then 
up  one  track.  This  whole  jirocess  may  be  repeated 
up  to  {'our  times  before  Ei  ror  #1  is  reported.  This 
error  also  seems  to  be  very  rare. 

Both  read  and  save  routines  use  the  sector 
seeking  routine  at  $28C4  which,  in  turn,  calls  $2998. 


OSI 


TRS-80 


COLOR-80 


OSI 


GALAXIAN  ■  4K  •  One  of  the  fastest  and  finest 
arcade  games  ever  written  for  tHe  OS!,  this  one 
features  rows  of  fiard-hiuing  evasive  dogfigfiting 
aliens  thirsty  for  vout  blood,  For  those  uvho 
loved  (and  tired  of)  Alien  Invaders.  Speeifv 
system  -   A  bargain  at  S9-95    OSI 


LABYRINTH  ■  8K  -  This  has  a  display  back- 
ground similar  to  MINOS  as  the  action  takes 
place  in  a  realistic  maze  seen  from  ground  level. 
This  is,  however,  a  real  time  monster  hunt  as  vou 
track  down  and  shoot  mobile  monsters  on  foot. 
Checking  out  and  testing  this  one  was  the  most 
fun  I've  had  in  years!  -  S13,95.    OSI 


THE AARDVARK  JOURNAL 
FOR  OSI  USERS  -  This  is  a  bi-monthly 
tutorial  journal  running  only  articles  about  OSI 
systems.  Every  issue  contains  programs  custom- 
ized for  OSI,  tutorials  on  how  to  use  and  modify 
the  system,  and  reviews  o*  OSI  related  products. 
In  the  last  two  years  we  have  run  articles  like 
these! 

1)  A   tutorial  on   Machine   Code   for   BASIC 
programmers. 

2)  Complete  listings  of  two  word  processors 
for  BASIC  IN  ROM  machines. 

3)  Movingthe  Directory  off  track  12. 

4)  Listings  for  20  game  programs  for  the  OSI. 
51    How  to  write   high   speed   BASIC   -  and 

lots  more  — 

Vol.1  (1980)6  back  issues- S9.00 

Vol.  2  (1981)  4  back  issues  and  subscription  for 

2  additional  issues  -  $9.00. 

ADVENTURES!!! 

For  OSI,  TRS-8Q,  and  COLOR-80.  These 
Adventures  are  written  in  BASIC,  are  full  fea- 
tured, fast  action,  full  plotted  adventures  that 
take  30-50  hours  to  play.  (Adventures  are  inter- 
active fantasies.  It's  like  reading  a  book  except 
that  you  are  the  main  character  as  you  give  the 
computer  commands  like  "Look  in  the  Coffin" 
and  "Light  the  torch".) 

Adventures  require  8K  on  an  OSI  and  16K  on 
COLOR-80  and  TRS-80-  They  sell  for  S14.95 
each. 

ESCAPE  FROM  MARS  (by  Rodger  Olsen) 
Th,s  ADVENTURE  takes  place  on  the  RED 
PLANT.   You'll    have   to  explore  a  Martian  city 
and  deal   with   possibly  hostile  aliens  to  survive 
this  one.  A  good  first  adventure. 

PYRAMID  (by  Rodger  Olsenl 
This  IS  our  most  challenging  ADVENTURE.  It 
is  a  treasure  hunt  in  a  pyramid  full  of  problems- 
Exciting  and  tough  I 

TREK  ADVENTURE  (by  Bob  Retelle) 
This  one  takes  place  aboard  a  familiar  starship. 
The  crew  has  left  for  good  reasons  -  but  they  for- 
got to  take  you,  and  now  you  are  in  deep  trouble. 

DEATH  SHIP  (by  Rodger  Olsen) 
Our  first  and  original  ADVENTURE,  this  one 
takes  place  aboard  a  cruise  ship  ■  but  it  ain't  the 
Love  Boat. 

VAMPIRE  CASTLE  (by  Mike  Bassman) 
This  is  a  contest  between  you  and  old  Drac  - 
and  it's  getting  a  little  dark  outside.  $14,95  each. 


OSI  NEW-NEW-NEW  OSI 

TINV  COMPILER 

The  easy  way  to  speed  in  your  programs.  The 
tiny  compiler  fets  you  write  arid  debug  your  pro- 
gram in  Basic  and  then  automatically  compiles  a 
Machine  Code  version  that  runs  from  50-150 
times  faster,  The  tiny  compiler  generates  relocat- 
able, native,  transportable  machine  code  that  can 
be  run  on  any  6502  system. 

It  does  have  some  limitations.  It  is  memory 
hungry  —  8K  is  the  minimum  sized  system  that 
can  run  the  Compiler.  It  also  handles  only  a 
limited  subset  of  Basic  —  about  20  keywords  in- 
cluding FOR,  NEXT,  IF  THEN,  GOSUB,  GOTO, 
RETURN,  END,  STOP,  USRIX),  PEEK.  POKE, 
-,=.',/,  ,^.  >  ,  Variable  names  A-Z,  and  Integer 
Numbers  from  0-64K. 

TINY  COMPILER  is  written   in  Basic.  It  can 
be  modified  and  augmented  by  the  user.  It  comes 
with  a  20  page  manual. 
TINY  COMPILER  -  S19.95  on  tape  or  disk    OSI 

SUPEROISK  II 

This  disk  contains  a  new  BEXEC  that  boots 
up  with  a  numbered  directory  and  which  allows 
creation,  deletion  and  renaming  of  files  without 
calling  other  programs.  It  also  contains  a  slight 
modification  to  BASIC  to  allow  14  character 
file  names. 

The  disk  contains  a  disk  manager  that  con- 
tains a  disk  packer,  a  hex/dec  calculator  and 
several  other  utilities. 

It  also  has  a  full  screen  editor  (in  machine 
code  on  C2P/C4))  that  makes  corrections  a  snap. 
We'll    also    toss    in    renumbering    and    program 
search  programs  —  and  sell  the  whole  thing  for  — 
SUPERDISK  II    S29.95  (5'/.")     OSI 

BARE  BOARDS  FOR  OSI  C1P 
MEMORY  BOARDS!!!  -  for  the  C1P  -  and  they 
contain  parallel  ports! 

Aardvarks  new  memory  board  supports  8K 
of  2114's  and  has  provision  for  a  PIA  to  give  a 
parallel  ports!  It  sells  as  a  bare  board  for  $29.95. 
When  assembled,  the  board  plugs  into  the  expan- 
sion connector  on  the  600  board.  Available  now! 

PROM  BURNER  FOR  THE  C1P  -  Burns  single 
supply  2716's.  Bare  board  -  $24.95. 

MOTHER  BOARD  -  Expand  your  expansion 
connector  from  one  to  five  connectors  or  use  it 
to  adapt  our  CI P  boards  to  your  C4/8P.-  $14.95. 

16K  RAM  BOARD  FOR  C1P  -  This  one  does 
not  have  a  parallel  port,  but  it  does  support  16K 
of  2114's.  Bare  Board  $39.95. 


WORD  PROCESSING  THE  EASY  WAY- 
WITHMAXI-PROS 

This  is  a  line-oriented  word  processor  de- 
signed for  the  office  that  doesn't  want  to  send 
every  new  girl  out  for  training  in  how  to  type  a 
tetter. 

It  has  automatic  right  and  left  margin  justi- 
fication and  lets  you  vary  the  width  and  rnargins 
during  printing.  It  has  automatic  pagination  and 
automatic  page  numbering.  It  will  print  any  text 
single,  double  or  triple  spaced  and  has  text  cen- 
tering commands.  It  will  make  any  number  of 
multiple  copies  or  chain  files  together  to  print  an 
entire  disk  of  data  at  one  time. 

MAXI-PROS  has  both  globaf  and  line  edit 
capability  and  the  polled  keyboard  versions 
contain  a  corrected  keyboard  routine  that  make 
the  OSI  keyboard  decode  as  a  standard  tvpe- 
writer  keyboard. 

MAXI-PROS  also  has  sophisticated  file 
capabibilities.  It  can  access  a  file  for  names  and 
addresses,  stop  for  inputs,  and  print  form  letters. 
It  has  file  merging  capabilities  so  that  it  can  store 
and  combine  paragraphs  and  pages  in  any  order. 

Best  of  all,  it  is  in   BASIC  (0S65D  51/4"  or 
8"  disk)  so  that  it  can  be  easily  adapted  to  any 
printer  or  printing  job  and  so  that  it  can  be  sold 
for  a  measly  price. 
MAXI-PROS  -  S39.95.  Specify  5%  or  8"  disk. 

SUPPORT  ROMS  FOR  BASIC  IN  ROM  MA- 
CHINES -  C1S/C2S.  This  ROM  adds  line  edit 
functions,  software  selectable  scroll  windows, 
bell  support,  choice  of  OSI  or  standard  keyboard 
routines,  two  callable  screen  clears,  and  software 
support  for  32-84  characters  per  line  video. 
Has  one  character  command  to  switch  model 
2  C1P  from  24  to  48  character  line.  When  in- 
stalled in  C2  or  C4  (C2S)  requires  installation 
of  additional  chip.  C1P  requires  only  a  jumper 
change.  -  $39.95 

C1E/C2E  similar  to  above  but  with  extended 
machine  code  monitor.  —  $59,95     OSI 

ARCADE  GAMES  FOR  OSI, COLOR-80  AND 
TRS-80  (8K  OSI,  16K  TRS-80  AND  COLOR-80) 

TIMETREK  -A  REAL  TIME.  REAL  GRAPH  ICS 
STARTRECK.  See  your  torpedoes  hit  and  watch 
your  instruments  work  in  real  time.  No  more  un- 
realistic scrolling  displays!  $14.95. 

STARFIGHTER  This  one  man  space  war  game 
pits  you  against  spacecruisers,  battlewagons,  and 
one  man  fighters,  you  have  the  view  from  your 
cockpit  window,  a  real  time  working  instrument 
panef,  and  your  wits.  Another  real  time  goody. 
$9.95 

BATTLEFLEET  ■  This  grown  up  version  of  Bat- 
tleship IS  the  toughest  thinking  garne  available  on 
OSI  or  80  computers.  There  is  no  luck  involved 
,  as  you  seek  out  the  computers  hidden  fleet.  A 
topographical  toughie,  S9.95 

QUEST  -  A  NEW  IDEA  IN  ADVENTURE 
GAMES!  Different  from  all  the  others.  Quest  is 
played  on  a  computer  generated  mape  of  Alesia, 
Your  job  is  to  gather  men  and  supplies  by  comb- 
bat,  bargairiing,  exploration  of  ruins  and  temples 
and  outright  banditry.  When  your  force  is  strong 
enough,  you  attack  the  Citadel  of  Moorlock  in  a 
life  or  death  battle  to  the  finish.  Playable  in  2  to 
5  hours,  this  one  is  different  every  time. 
16K  COLOH-80  0R  TRS-EO  ON  LY.  $1435 


Please  specify  system  on  all  orders 

This  is  only  a  partial  listing  of  what  w8  have  to  offer.  We  offer  over  120  games,  ROMS,  and  data  ^sels  (or  OSI  systems 
and  many  games  and  utilities  (or  COLOR-80  and  TRS^O.  Send  $1.00  for  our  catalog. 


OSI 


AARDVARK  TECHNICAL  SERVICES,  LTD. 

2352  S.  Commerce,  Walled  Lake,  Ml  48088 

(313)669-3110 


COLOR-80 


120 


COMPUTEI 


Febfuary,  1982.  Issue  21 


Further,  they  both  use  a  dual  purpose  routine  at 
$2905.  If  the  accumulator  is  zero  on  entry,  this 
routine  reads  to  memory.  If  it  is  nonzero,  then  the 
routine  compares  with  memory.  The  actual  read 
and  compare  loops  within  this  routine  are  separate. 
With  8"  floppies  and  a  1  MHZ  clock,  the  6502  is 
not  fast  enough  to  get  from  one  disk  byte  to  the 
next  if  the  read  and  compare  loops  are  combined 
into  one.  As  it  stands,  the  c<mipare  loop  just  barely 
returns  in  time  for  the  next  comparison.  With  a  2 
MHZ  clock  there  is  plenty  of  time. 

I  view  the  sector  directory  routines  at  $29F3 
and  $2 A4 1  as  utilities.  They  do  not  need  to  be 
resident  in  memory. 

Machine  language  routines  may  access  the 
disk  directly.  For  example,  to  write  a  sector,  loca- 
tions |265E-$2662  should  be  assigned  correct 
values.  The  following  segment  of  code  will  write  a 
sector  to  the  disk. 

10JSR$26A6   ; Move  head  to  track 

20  JSR  $2754   ;Eiigage  head,  find  start  of  track 

30JSR$27D7   jWrite  sector 

40  JSR  $2761    ;Disengage  head 

50  RTS 

If  the  write  address  is  already  in  $FE,  $FF  then 
$27D7  may  be  entered  at  $27E  1 .  In  this  case,  lines 
20-40  may  be  replaced  by  JSR  $2CA7,  a  kernel 
routine. 

To  read  a  sector,  again  assign  correct  values  to 
$265E-1f2662  then  perform  the  following. 

10  JSR  $26A6   ;Move  head  to  track 

20  JSR  $2754  ;Engage  head,  find  start  of  track 

30JSR$295D   ;Read  sector 

40  JSR  $2761    ;Disengage  head 

50  RTS 

If  the  read  address  is  already  in  $FE,  $FF  then 
$295D  may  be  entered  at  $2967.  In  this  case,  lines 
20-40  may  be  replaced  by  the  kernel  routine: 

JSR$2B1A 

When  we  discuss  the  I/O  section  of  OS65D  we 
will  see  additional  ways  to  read  from  and  write  to 
the  disk. 

References: 

1.  Jefferson  Haiinaii,  "IBM  Compatible  Disk  Drives",  Byte 
October  1979,  p.  100 

2.  Ira  Rampil,  "A  Floppy  Disk  Tutorial",  Byte  December 
1977,  p.  24 

3.  Les  Solomon,  "BASICS  of  Computer  Disk  Systems",  Popular 
Electronics  November  1980,  p.  53 

MAP  -  OS65D  DISK  HANDLER 
DISK-MEMORY  DATA 

265C  DRIVE  NUMBER 

265D  CURRENT  BCD  TRACK  NUMBER 

265E  SECTOR  NUMBER 

265F  PAGE  LENGTH  OF  SECTOR 

2660  LOW  BYTE  LOAD/SAVE  VECTOR 


2661  HIGH  BYTE  LOAD/SAVE  VECTOR 

2662  BINARY  TRACK  NUMBER 

DISK-Z  PAGE 

E5  LAST  TRACK  OF  FILE  BEING  HANDLED 

F6  NUMBER  OF  RETRIES  ON  WRITE 

F7  NUMBER  OF  HEAD  MOVE  RETRIES  ON 

READ 
F8  NUMBER  OR  READ  RETRIES  BEFORE 

HEAD MOVE 
F9  SECTOR  COUNT 

FA  TARGET  TRACK  NUMBER  ON  SEEK 

FB  SECTOR  NUMBER  READ  ON  DISK 

FC  STACK  POINTER  (IN  $29F3) 

FD  SECTOR  PAGE  COUNT  (IN  $27D7) 

FE  SYSTEM  POINTER.  USED  AS 

FF  LOAD  AND  SAVE  VECTOR  BY  DISK 


Subroutines  —  OS65D  Disk  Handler 


2663 
2678 
267A 
2683 
268A 
26A2 
26A6 
26A9 
26BC 


2700 
2708 
271D 
2728 
272B 
272E 
2739 

2754 

2761 

2768 

277D 

27C2 

27CD 

27D7 

27E1 

289F 

28A4 

28B0 

28C4 
290S 
295D 
2967 

2998 

29C6 

29DA 

29EB 

29F3 

2A41 


Home  the  Disk.  Move  the  disk  head  to  track  0. 
Wait  12  ms. 
Wait  X  ms. 

Step  up  one  track  toward  track  76. 
Step  down  one  track  toward  track  (J. 
Wait  8  ms. 

Fetch  binary  track  number  from  2662  then: 
Convert  track  number  to  BCD  then: 
Check  for  track  0-76  BCD,  check  for  drive  ready, 
move  disk  head  to  track,  adjust  head  current,  and  if 
an  error  occurs,  abort  and  send  an  error  message 
via2A4B. 

Wait  20Y  -I-  7  microseconds  (1  MHZ  clock). 
Adjust  head  current. 
Find  trailing  edge  of  index  hole. 
Engage  head  then: 
Find  index  hole  then: 
Initialize  disk  ACIA. 

Engage  head,  read  from  index  hole  full  around  to 
index  hole,  then  quit. 
Head  down. 
Head  up. 

Initialize  full  disk. 
Initial ize  one  track. 
Send  a  byte  to  the  disk. 
Fetch  a  byte  from  the  disk. 
Fetch  sector  save  vectors  then: 
Save  a  sector. 

Wait  800($FA)  microseconds. 
Wait  lOOY  microseconds. 

Fetch  a  byte  from  the  disk.  Abort  with  an  error 
message  if  over  the  index  hole. 

Find  theendof  the  sector  preceding  the  one  in  265E. 
Read  a  sector  to  or  compare  a  sector  with  memory. 
Fetch  disk  read  vector  then: 

Read  and  reread  a  sector  to  memory,  quit  if  suc- 
cessful or  the  full  number  of  retries  are  exhausted. 
Find  the  end  of  the  present  sector. 
Select  the  drive  in  26.'iC  then: 
Check  if  the  drive  is  ready. 
8  drive  select  data  bytes. 
Output  a  sector  directory. 
Output  subroutine  for  29  F3. 


Speed 
Power 
Efficiency 


for 


OSI 

65D3  SYSTEMS 


Printer  Spooler 

Virtual  Indirect  File 

STOP  WAITING  for  yayr  prinifH 

PROCESS  WDrdi.  wnti  progrims.  .ill  whili  printing! 

QUEUE  ltd  you  piii  on  print  jobr 

rWD  pnnltri  iriay  bt  iccamodiiBd  pn  my  two  poro. 

MLtlTiPLE  COPIES  with  lop  ind  batiam  pigi  mirBint, 

5YSGEN  rvlocilas  iflCt  permits  irtaniWa  cuitamifiiion- 

VIRTUAL  INDIRECT  FILES  on  diik  End  spies 

prDblmmi  whtn  using  timpoiirY  fUax.  Now  da  gxttniivi 

idrting  a(  BASIC  with  yoMf  WArd  prDciiioi. 

BASIC  Cross  Referencer 

*  TABULATES:  Ra(araRC«d  tins  numbars.  virtabla  ftimax 
(nuinfrjc.  aKing.  «n«v),  ind  datinad  funcTioni. 

*  FAST  machine  langiiaga  piogrim. 

*  DISK  biitd  lot  largi  BASIC  loorea  lilii  on  i<iy  drivi. 


$95/S10 


$25 


FBASIC:    BASIC  Compiler 

•  fAST  michini  codi  wrintn  vnith  ihi  *«*■  of  8ASIC. 

•  SPEED- aptimiiad,  nativi'cod*  eompiltr 

•  JNTEG£R  lubiti  ol  OSI-iupplitd  BASIC. 

•  DISK  bind  ta  illow  lirgtit  louict  ind  objtct  filti. 

•  EXTENSIONS  !i>  BASIC: 

—  Simpli  iniarfttA  to  »Y<t>ni  hirdwin  ind  >j}tlwirfl. 

—  Dirsct  iccflii  ID  GSa2  rtgiiitft. 

—  Amy  initijiliziltM  ind  opiionit  ibtoiuts  li^otion, 

—  WHILE  ind  othsi  it[uclu[ii. 

—  Combin*  cDmjiJIti  ind  intirprilir  idv^ntiBit, 
4>    UTILITIES  (plui  iDurc«}H  minuil,  and  mpny  ininpltt. 


R-EDIT:    Edit  any  program  or  text! 

*  FULL  CURSOR  controL  Edit  tnywlttrt  oa  iht  scrttn. 

*  INSERT,  rifilica.  idd.  dtlttt  with  RAM-riittfant  tditar 
4  ONf  KEY  ilioki  ind  YDu'n  •ditin'g 

*  BASIC,  iiftimblir,  i(e.  iditid  wiihaui  rtloiding  REDlT. 

*  SrSGEN  nlocilti  R-ED|T and ptrmili ittifliivo cuttDmiiiliD& 


CP/M  to  OSI 


/wore 

Data  Resource  CDrpdretidn 
Suite  203 
1040  Lunaai  Street 
Kailua,  HI  9E734 


(808)261-2012 


Minuj!  ffidirt  apphid  td  letiwiK  pucEhitii.  Protrimi  luppliid  oi 
iingli-iidfd  diiki      H'woi  rttidmu  tdd  4%  Ui. 


Disk  Translation  Service 


Fruilnted  by  ill  lliDsa  good  CP/M  diaki  that  won't  run  on  your  OSI  CP/U  lyiltm? 
It's  Ihit  sp'Bciil  OSI  disk  lormil!  And  wn  ctn  fix  thit.  Just  ssnd  us  your  disk,  &15,  mil 
you'll  iooti  hflUQ  »fl  OSI  compitible  ditk. 


in.  linfli-dinitty. 


A  Correction 
For  Progressive 
Computing 
Chess  1.9 

Dave  Leskin 
Calgary,  Canada 

Progressive  Computing,  based  in  Windsor  Ontario, 
is  an  excellent  source  of  OSI  software  with  prompt 
and  courteous  service;  however,  there  is  a  major 
error  in  their  tape  version  of  "Chess  1 .9".  This 
error  is  found  in  the  opening  tables.  If  you  try  the 
following  sequence  of  moves  you  can  determine  if 
your  copy  of  "Chess  1 .9"  has  this  error  too.  Note 
that  the  last  move  by  the  computer  is  illegal.  Micro- 
chess  notation  in  brackets. 

Computer  (White)         Human  (Black) 


1  P-K4    (13-33) 

2  N-KB3(0t-22) 

3  B-QN5  (02-46) 

4  B-KN5  (05-41)??? 


P-K4    (63-43) 
N-QB3  (76-55) 
N-KB3  (71-52) 


As  you  see  the  "B-KN5"  jumps  right  over  the 
Queen  Pawn  at  14.  To  solve  this  problem  I  changed 
the  program  so  that  the  Queen  Knight  was  moved 
from  06  to  25  instead.  This  results  in  a  'Tour 
Knights  Game"  which  is  a  common  opening  used  by 
many  players.  Just  follow  the  steps  listed  below  to  ef- 
fect the  change. 

The  Changes 

1.  Load  "Chess  1.9" 

2.  Press  "D"  to  enter  monitor  once  the  board 
appears. 

3.  Press  ".0B34" 

4.  Press  "/"  to  enter  the  data  mode 

5.  Press  "25"  which  refers  to  the  square  that  the 
piece  will  be  moved  to 

6.  Press  the  "RETURN"  key 

7.  Press  "07"  which  refers  to  the  piece  to  be 
moved  —  in  this  case  the  Queen  Knight 

8.  Press   ".03AC"   and   "G"   to   return   to   the 
program 

Now  the  program  will  respond  N-QB3  in  place 
of  B-KN5  each  time  this  opening  sequence  occurs. 
If  you  have  the  capability  to  store  machine  code  pro- 
grams (Aardvark's  "AUTOLOADER"  or  "CIE" 
ROM)  then  record  the  modified  version  (otherwise 
you'll  have  to  follow  the  above  procedure  each  time 
you  power  up).  © 


122 


COMPUTil 


Febfuory.  1982.  Issue  21 


r 


1. 


■iW.H 

J/N'i, 

Mm. 

\ 

.A.\. 

DdiMi  A 

<- 

■^S.n.ill  > 

Ira 

.t 

/ 

' 

Adjust 

Pri'scnl 

Trark  # 

7|      Mcud 


2739 


Put 

Head 

Down 


I'incl 

Inde> 

Hok- 


RoMt 
AC:iA 


SUBR2728 


273F 


2745 


Save  Bytf 
At  Poiiilor 


Increment 
Pointer 
Lou-  Bvie 


273C 


Increment 
Pointer 
Hi  Bvtc 


2768 


Set  Last  Track 

Number  =  S7S 


Home 

Disk 


Advance  One 
Track  Touard 
Last  Track 
SUBR2C«3 


InitiaEi/.e  One  Track 
SUBR  277n 


277  A 


Raise 
I  load 


Wait 
40  ms. 


RTS 


Febfuary.  1982.  Issue  21 


COMPUTE) 


123 


277D 


Head  Down 
Find  Index  Hole 
Reset  ACIA 
SUBR.  2728 


Turn  On  ERASE  WRITE 


Wait  1  ms. 


Write 

$4;l 


Write 

S57 


VVrilc  Track  Number 


Write 

S58 


Erase  Some 


27BC 


Head  Up 

ERASE/WRITE 

Off 

Wail 

40  nis. 

RTS 

27EI 


27D7 


Set  Pointer 

M 


Fetch  Page  Length  Sector 


27E4 


27  E6 


.No 


$80     >^^ 


2  TEE 


Error 
#B 


27F5 


,  No 

,  'Ar  ^ 

Track  \Ves_ 
0 


No 


^       RTS 


Set  Preceding  Sector  Length  To  1 


27FF 


Write\vcs         , 
Protect  ?  ? 


Error 

#4 


Set  Write  Relrv  #  To  2 


■^ 


Set  Compare  Retry  #  To  4 


I 


Find  Length  And  End  Of  Preceding 
Sector  SUBR  28C4 


Wait  800  X  (Prededing  Length)  us. 


I 


Enable  WRITE  F-un<  lion 


Wait  lKr)jis. 


Enable  ERASE  Function 


Wait  800  X  (Preceding  Length)  us. 


Write  $76 

Write  Sector  # 

Write  Sector  Page  Length 

<■ 

\ 

Write  Byte  From  Pointer 
Increment  Byte  Pointer 

124 


COMPUTEI 


Februar/,  1982.  Issue  21 


2847 


Increment  Page  Pointer 
Decrement  Page  Length 


28-11) 


Write  St7 
Write  $5S 
Compute  6  x  (Sector  Length) 


Wait  100  X  (Compute) ^s. 


liirn  Off  WRITE 


Wait  525  us. 


Turn  Off  ERASE 


CLEAR  Read  Flag 


RESET  Pointer 


Compare  Sector  Willi 
Mcmorv  SUBR  2905 


28H5 


Decrement  Compare  Retry  # 


2H89 


Decrement  Write  Retry  # 


288D 


Yes 


RTS 


si      Error 

"^      #2 


Reset  Pointer 


ZI 


28C4 


Find 
Index 
Hi>lf 


Read  A  Bvte  In  1  Rev. 

Of  Disk  (Or  Error  #9) 
SUBR  28B0 


28C:(: 


Error 


28  DB 


Read  X  Bvte 


DccrciTienil 
rarjjel  .Seilor 
Number 


Yes 


28  E7      N^Nc 

I  Scl  Sector  SEEK  #  To  1)  "| 


Find  End  Present  Sector 
SUBR  2998 


28F0 


Error 

#A 


Error 

#  A 


I  Increment  Target  Sector  Number  | 


RTS 


February,  1982.  Issue  21 


COMPUTEI 


125 


2905 


Save  READ  Flag 


Find  End  Precedinj»  Sector 
SUBR  28C4 


Read  Bylc  Within  I  Rcvulution 
Of  Disk  (Or  Error  #9) 

SUBR2aB0 


290E 


2916 


Clear  Success  Flag 
Fetch  Read  Flag 


RTS 


REAll  And  SAVE  Page  Linnth  Of  SecKir      H 

nr ■ 


I      Felrh  READ  Flag 


294F 


Save  Bvte  In  Nteinorv 


Iiicremt'nt  Bvte  Pointer 


2954 


Incromoiit  Page  Pointer 

X 


Decrement  Page  Length 


2959 


Done  \  N» 
Sector 


Oompare  Byte  With  Memory 


Increment  Page  Pointer 
Decrement  Page  Length 


Set  Success  Flag 


Set  Success  Flag 


RTS 


X 


RTS 


126 


COMPUTEI 


Febnjary.  1982.  Issue  21 


2967 


295D 


Gel 
Pointer 


Sft 

Head  Move 
Retry 
#To4 


Set 

Read  Retry 

#To7 


Yes 


Set  READ 
Flag 


Read  Sector  To  Memory 
Set  Flag  If  Success 
SUBR  2905 


2991 


2974 


Clear  End 
Of  Sector 
Flag 


29A1 


Yes 


>      RTS 


RTS 


29A8 


Cct# 
Pages 
To  Read 


297D 


7s 


JYes 

I  READ  A  Byle 


Increment 
#  Pages 
Read 


Decrement 

Page 

Pointer 


Save  Present  Sector  #     \ 
I  READAByto  | 


Save  Page  Length  This  Sector 


Increment  Sector  SEEK  #         ] 


Move  Head 
Down  One 
Track 


Wail 
12  ms. 
More 


T 


.Move  Head 
Up  One 

Track 


T 


Wail 
12  ms. 
More 


Decrememl 
Head  Move 
Retrv  # 


February.  1982  Issue  21 


COMPUTE! 


127 


29F3 


29  F4 


Move  Head  To 
Track  SU8R26BC 


Output  Linefeed 

"Track  " 


I 


Output  Track  # 


Save  Stack  Pointer 
I 


Engage  Head 
SUBR2754 


29DA- 


Sectort  #  =   1 


Read  To  End  Of  Track 
Header  SUBR  28C4 


I 


Sector  Count  =  0 


Find  End  Present  Sector 
SUBR  2998 


I 


Save  Sector  #  And  Page 
Length  On  Stack 


2A24     /        \  No 
Done 
Track 


Fetch  Stack  Pointer 


Decrement  Sector  Count 


2A39 


Reset 
Stack 
Pointer 


RTS 


^. 


29C6 


Save  Drive  # 


Compute  Drive 
Index  For  X 


Compute  Drive 
Group  For  Y 


Use  X  To  Fetch 
And  Set  First 
Select  Bit 


Use  X  To  Fetch 
And  Set  Second 
Select  Bit 


Drive  I:  Fetch 
Disk  Status  Bit 
For  Carry 


Drive  2:  Fetch 
Disk  Status  Bit 
For  Carry 


RTS 


"ASTRO    BLASTER-^ 


ASTEHOIDS    WHICH   AHE  DHIFn.'iO    Is    PKOR   DEEP 

SPACE,  ax  BLAsrijic  them  :k:o  h;^ble.  be 

"■-lEfUL   BECAUSE   THE   LASiE    OSES   SPLII    IXTfl 
SHALLES   ONES    mSH   HIT,    au*^H   'LX   OFF 

XL  d;reci:oss!  just  -jhek  you'th-sk 


Output  CRLF  Then  Space 


Output  Sector  # 
Then  — 


X 


Output  Sector  Length 


iN^,\^fL.. 

/       I  ™U-VE   SLASIiD   IHEK  ALL.    C.ORe'aPP^A 

'kSZm  3LA5IEE*   by    JOKK    VZuSOX    "5   A    ••■'ACp-KcVnTiy.. 

--.'.isi  :.".£  Acr.oN  ;3  vEar  smooth  asd  the  asieho-ss  ah^  thf  hn- 

L00K:KJ  EVEli  ON  031-  HO  LITfLE  CIRCLES  KEHEI  AVA""  ABL?  ^0^  M~5 
CIP  A^■t)  •••cliP—  PLEASE  SPECIFY  loUH  "J^ii  """-^BI-  ■  "S  BCiH 
SISTER.    BK   cassette    »9.95  ^^ 

SE.*ID   Jl.Oa    FOH   OUR   PHOTO- 

iLiysri'.ArEE  catalog  t  ^et 

*I.5C  CBEDIl  ON  YOUE  FIES: 
__     OHDE.o.l  CASSETTES  OSLY! 

Js^i-    Fretzelland    Softwaio 

2005  A  WHITTAKER  RD. 
YP8ILANTI,  Ml.4819-r 


130 


COMPVTEI 


February.  1982.  Issue  21 


character  grid  while  in  this  mode.  Table  2 
contains  the  subcommands  of  the  EDIT  mode. 
A  raster  (*)  is  the  only  exit  from  this  mode. 
GENERAL  INPUT.  The  CURSOR  input 
routine.  It  is  called  by  COMMAND  DECODE 
and  INPUT  CODE. 

TEST.  Prints  the  entire  character  set  on  the 
printer. 

TABLE.  Prints  a  table  in  the  format  of  Table  3. 
END,  Closes  all  devices  and  clears  the  screen. 
Can  be  called  at  any  time  without  disturbing 
the  new  character  set. 

It  is  possible  to  create  a  reasonable  facsimile  of 
the  PET's  shifted  keyboard  graphics  with  the  5  by 

7  BASE  2  print  matrix.  (The  PET  screen  matrix  is 

8  by  8.)  DATA  statements  for  this  pseudo-PET 
character  set  are  included  in  Program  2,  Printing 
all  characters  displayable  on  the  PET  screen  would 
require  3  user  defined  character  sets  on  the  BASE 
2.  An  easier  way  of  implementing  "full"  pseudo- 
PET  graphics  is  via  the  graphics  function  of  the 
BASE  2. 

Standard  and  user-defined  characters  can  be 
displayed  on  the  same  line,  but  doing  so  requires 
two  passes  of  the  print  head;  i.e.,  normal  print 
followed  by  carriage  return  without  linefeed  and 
user-defined  print.  This  is  not  difficult  to  arrange 
during  formatted  printing  from  a  program.  Listing 
a  program  is  more  complicated.  One  approach  is 
to  list  to  the  screen,  sort  and  count  characters,  and 
then  use  one  of  the  many  screen  printing  routines 
previously  published  in  COMPUTE!  and  other 
magazines. 

While  on  the  subject  of  li-stings,  it  should  be 
mentioned  that  the  normal  list  sequence  of: 

OPEN5,4:CMD5:LIST 

will  not  work  for  long  listings,  probably  due  to 
some  bug  in  the  timing  when  CMD  is  invoked.  The 
following  sequence,  using  the  terminal  buffer 
feature  of  the  BASE  2  (run  in  either  immediate  or 
program  mode)  will  work: 

OPEN5,4 

PRINT#5,CHR$(27);CHR$(82);CHRS(20);CHR$(80h 

PRINT#5,CHR$(27);CHR$(54); 

CMD5:LIST  (or  LIST  XXX-  in  program  mode) 

PRINT#5,CHR$(27);CHR$(83):CLOSE5 

Whether  your  application  is  mathematics, 
foreign  languages,  APL,  or  whatever,  design  your 
own  character  set  with  ease  using  CHARACTER 
EDITOR. 


Table  1. 

COMMANDS  (all  followed  by  RETURN) 

I(RETURN)##    Input  code  and  display  character 
+  Display  next  character 


E 

L 
P 
S 
T 

TABLE 

TEST 

END 


Display  previous  character 

Edit.  (See  Table  2) 

Load  character  set  from  tape 

Download  Character  Set  To  Printer 

Save  Character  Set  to  Tape 

Toggle  printer 

Print  table  in  format  of  Table  3 

Test  print  entire  character  set 

Terminate  program 


Table  2. 

EDIT  MODE  SUBCOMMANDS 

> 
< 


Move  cursor  to  next  grid  point 

Move  cursor  to  previous  grid  point 
t  Move  cursor  up  one  row 

*—  Move  cursor  down  one  row 

SPACE  key  Erase  matrix  point  and  move  to  next  grid 

point 
shifted  &  Insert  matrix  point  at  grid  point 

C  Clear  character  grid 

*  Store  displayed  character  in  memory  and 

return  to  COMMAND  DECODE  mode 


Tables. 

CHR*<; 

32  > 

II    11 

0 

0         0 

0 

CI 

CHRS<. 

33  :> 

II 1  II 

127 

127 

12 

7         0         0 

CHR*<: 

34J 

II    II 

120 

120 

12 

0         120 

12  n 

CHR*< 

35  > 

II— II 

1 

1          1 

1 

1 

CHR*!; 

3&> 

II     11 

64 

64 

64 

c4          &4 

CHR*< 

37  > 

"1    " 

127 

0 

0 

0          0 

CHR*< 

33.^ 

1.^.1 

S5 

42 

S5 

42         85 

CHR*>; 

39;' 

1.   ,11 

0 

0         0 

0 

127 

CHRS  C 

40> 

"«" 

80 

4  0 

8  III 

40         SO 

CHRfC 

4i> 

"f" 

127 

63 

15 

3         1 

CHR*  C 

42^ 

II  1 11 

0 

0         0 

127         127 

Program  1. 

100    REM   PET/BASE   TWO   PROGRAMMABLE   -i 

-■CHARACTER   EDITOR 
105    REM 
110    REM 


115  REM 
120  REM 
125  REM 
130    REM 


BY  P.  J.  ROVERO 

NOCC  COMNAVMAR  BOX  2 
FPO  S.  F.       96630 


THIS  PROGRAM  ENABLES  THE  USER 
-iTO  EASILY  BUILD,  STORE,  AND 
135  REM  EDIT  CHARACTERS  IN  THE  FORMAT 
lUSED  BY  THE  BASE  TWO  MODEL 
800  MST  PRINTER. 


140  REM 
145  REM 
150  REM 

155  REM 

-ii 
160  REM 

-ii 
165  REM 
170  REM 
175  REM 
180  REM 
185  REM 
190  REM 


THE  VARIABLE  BA  SHOULD  BE  i 
CHANGED  TO  SUIT  THE  SYSTEM. 

BA=  START  ADDRESS  OF  482  BYTES 
OF  BASIC-PROTECTED 

MEMORY  REQUIRED  FOR  USER  -i 
CHARACTER  TABLE. 

COMMAND  SUMMARY; 


S   SAVE  CHARACTER  SET  TO  TAPE#1 
L   LOAD  CHARACTER  SET  FM  TAPE#1 
P   DOWNLOAD  CHARACTER  SET  TO  -. 
-iPRINTER  MEMORY 
195  REM  T   TOGGLE  PRINTER  BETWEEN  -■ 


February,  1982.  Issue  21 


COMPUTEI 


131 


200 

205 

210 
215 
220 

225 

230 

235 

240 
245 
250 
255 
260 

265 

270 
275 
280 
285 
290 
295 
300 
305 
310 
315 
320 
325 
330 
335 
340 
345 
350 
355 
360 
365 
370 
375 
380 
385 
390 
395 
400 
405 
410 
415 
420 
425 
430 
435 
440 
445 
450 
455 
460 
465 
470 
475 
4  80 
485 


-iCHARACTER  SETS 

rem  test  print  user  defined  -. 

-tCharacter  set 
rem  table  print  a  table  in  format  -, 

-.chr$(x)  "character"   data  stream 
rem  +  display  next  character 
rem  -  display  previous  character 
rem  i  input  character  code  and  -i 

-id  i  splay  character 
rem  e  edit  character  displayed  on  -. 

-.screen.  subcommands  in  this 
rem    mode  are  >,<,*,"  for  cursor  -i 

-icontrol  and  *  to  enter 
rem   displayed  character  into  -. 

nMEHORY . 
REM  END   CLOSE  ALL  DEVICES  AND  END 
REM****** 

REM       INITIALIZATION  ROUTINE 

POKE134,00:POKE135,60:REM  PROTECT  -. 

-.TOP  IK  OF  MEMORY 
PRINT"filNITIALIZING  VARIABLES" 
TG=77:CU=32849:BA=15361 
DIM  SL%C7) ,SH%(7) ,CC%{5) ,LC%(7) 
CR$=CHR$<13) 

FORI=0TO4:CC% (I) =1+1*3: NEXT 
FORI=0TO6 : LC% ( I) =1+1*3 : NEXT 
FORI=0TO6:READ  SL%(1):NEXT 
DATA80,200,64,184,48,16  8,032 
FORI=0TO6:READ  SH%(I)!NEXT 
DATA128,128,129,129,130,130,131 
CO%=32 : POKEBA, 27 : POKE (BA+1 ) ,75 
REM****** 
REM        COMMAND  DECODE  ROUTINE 

PRINT"ii" 

GOSUB415:REH  INITIAL  DISPLAY 

G0SUB1165:REM   INPUT 

IFIN$=''S"THENGOTO650 

1FIN$="L"THENG0T0765 

IF1N$=''P"THENG0SUB835 

IFIN$="T"THENGOSUB890 

IFIN$="TEST"THENGOSUB1260 

IFIN$="+"THENGOSUB930 

1FIN$="-"THENG0SUB965 

IFIN$="I"THENGOSUB1000 

IFIN$="E"THENGOSUB1060 

IFIN$="TABLE"THENG0SUB1315 

IFIN$="END"THENGOTO1305 

GOT0345 

REM****** 

REM       INITIAL  DISPLAY 

A$="0#»"iB$="0#P":C$="L$$":D$="L$!" 

E$="i ":F$="%  '" 

A1$=A$+A$+A$+A$+B$ 

A2$=E?+E$+E$+E$+F$ 

A3$=C$+C$+C$+C$+D$ 

PRINT"li" 

FORI=0TO6 

PRINTAl $ : PRINTA2  $ : PRINTA2  $ 

NEXT 

PRINTA3$ 

GOT0345 

REM****** 

REM       DISPLAY  SR 


490 

REM****** 

495 

BT=BA+2+C{CO%-32)*5) 

500 

F0RH=BTT0(BT+4) 

505 

C2=CU+( (M-BT)*3) 

510 

CH%=PEEKCM) 

515 

FORN=0TO6 

520 

C3=C2+(N*120) 

525 

POKEC3,42 

530 

IFCH%AND(2~N)THENPOKEC3,102:GOTO540 

535 

P0KEC3,32 

540 

NEXTN 

545 

NEXTM 

550 

POKE224,184:POKE225,129:POKE226,19: 

-.POKE245,ll:POKE5,19 

555 

PRINT"           4<««4«<"  }"CER$l''t 

-.C0%  ;  "  )  "  ; 

560 

RETURN 

565 

REM****** 

570 

REM       RASTER  SR 

575 

REM****** 

580 

PORJ=0TO4 

585 

CH%  =  0:SPOT=CU+U*3) 

590 

FORK=0TO6 

595 

IFPEEK (SPOT) =102ORPEEK { SPOT) =230THEN 

-nCH%=CH%+{2"K) 

600 

SP0T=SPOT+120 

605 

NEXTK 

610 

BT=BA+2+({CO%-32)*5)+J 

615 

POKEBT,CH% 

620 

NEXTJ 

625 

GOSUB485 

630 

RETURN 

635 

REM****** 

640 

REM       SAVE  SR 

645 

REM****** 

650 

PRINT "R" 

655 

INPUT "CHARACTER  FILENAME"; A$ 

660 

POKE243,122:POKE244,2 

665 

0PEN1,1,2,A$ 

670 

M=0 

675 

FORN=(BA)TO(BA+481) 

680 

CI%=PEEK(N) 

685 

PRINT#1,CI%; 

690 

PRINTCI%; 

695 

M=M+1 : IFM=1 91THENGOSUB725 

700 

PRINT#1,CHR?(13); 

705 

M=M+1 : IFM=1 91THENGOSUB7  25 

710 

NEXT 

715 

PRINT"R" : CLOSEl :GOT0415 

720 

REM****** 

725 

REM       FORCE  INTER-RECORD  GAP 

730 

REM****** 

735 

POKE59411,53 

740 

T1=TI 

745 

IF{TI-T1)<20GOTO745 

750 

POKE59411,61:M=0 

755 

RETURN 

760 

REM****** 

765 

REM       LOAD  SR 

770 

REM****** 

775 

PRINT"R" 

780 

INPUT"CHARACTER  FILENAME" ;A$ 

785 

OPEN1,1,0,A$ 

790 

FORN=0TO4  81 

795 

INPUT#1,CI% 

superqnphics  for  your  cbi  B037 

t  128,1)00  iccEssiMe  points  (MO  i  200) 
t  lii  cbi  tExt  Hith  high-res  graphics 
5  Jfriie  0,0  to  439. 1?9  f  supports  hjrd  copy  to  epson  iJ-82 

to  open  (,4:lrecall*ci()  lDqD',B,l 
20  l(-2.l:z=50it=7;pi=3.Hl5y:i=4:bM  coiimds  in  roi  include: 

30  for  th^O  to  21b!  step  2>pi/180  ^_^  

40  r  =  ztsin(thlt)  !_<'   /\\-^  ilot    i,y  love  i,y 

50  I  =  2a0+l[lr»cos(jlth} /PY    VT\         cdot  i,if  dran  i,y 

iO  y  =  l20+r»sin(blth)^,-4'4v  {\/\  >-Sx     test  i,y,i 

70  if  thOO  then  100   /    L   VHY>V_J.  \ 

80  iiove  i.y  x'n?^\o/>^''xx    line     <liyl  to  ii2,y2 

90  goto  iir  f\<r^'^^^^ai^'^^-"^/)  f^^'"   "'i*''  *"  "^^^ 

100  idrax  i.y  V/^>''^'l^'^"<"'\  /    •"'"^    "liT'  ti!  '^Y^ 

110  next  th  ?W^V/V\VV^    *'''«    >l,yl  to  x2,y2 

120  ihardU  V7/S^A  NAW     cfraie  il,yl  to  x2,y2 

130  close  ii  end  M^-f^ (/\) ^V--)^      fill      xiiyl  to  x2,y2 

^"^i^v   /'""-J—/  clear    xl,yl  to  x2,y2 

^\__;><_y'^  displ    iiYiSt  -  for  user 

defined  shapes 
gsav      'filenaie',8 
recall  'fi!enaie',e 


waiPBBs^ 


^t  commodore 


CBM 


Model    8032 


comput:er 


SUPERGRAPHiCS 

128,000  ACCESSfBLE    POINTS 


Features 

*  128,000  accessible  points  arranged  In  200  x  640  grid 

*  16K  static  ram  supplies  memory  mapping  of  pixels  on  separate  board 

*  supported  through  extended  Basic  commands  supplied  In  ROI^ 

*  uses  no  memory  from  the  existing  system 

*  mix  standard  CBM  text  and  loyy-res  graphics  with  hl-res  displays 

*  easy  to  design  and  display  user  defined  shapes 

*  normal  or  Inverted  display  mode  for  partial  or  total  screen 

*  switch  graphic  display  on  or  off  -  continue  output  in  passive  mode 

*  save  graphic  Images  on  a  disk  file 

*  recall  Images  from  disk  with  option  to  mix  with  existing  display 

*  supports  hardcopy  to  Epson  MX-82  or  Centronix  739  printers 

*  easy  to  follow  installation  Instruction  Included 


OVD 


CANADIAN  MICRO 
DISTRIBUTORS  LTD. 

365  Main  St.,  Milton,  Ontario  L9T 1P7 
416  878-7277 


DISTRIBUTORS  OF: 

MUPET  •  DOUBLE-MUPET  •  SPOOLER 
THE  MANAGER  •  I/O  PRODUCTS 


February.  1982.  Issue  21 


COMPUTEt 


133 


800  IFST=-128GOTO820 

805  POKE(BA+N) ,CI% 

810  PRINTCI%; 

815  NEXT 

820  CLOSEl 

825  PRINT"fi":GOT0415 

830  REM****** 

835  REM       DOWNLOAD  CHARSET 

840  REM****** 

845  OPENS, 4 

850  PORM=BATO(BA+481) 

855  CH%=PEEK(M) 

860  PRINT#5,CHR$(CH%) ; 

865  NEXTH 

870  PRINT#5:PR1NT#5,CHR$C27) ;CHR$(76) 

875  CLOSES 

880  RETURN 

885  REM****** 

890  REM       TOGGLE  SR 

895  REM****** 

900  IFTG=77THENTG=76:GOTO910 

905  IFTG=76THENTG=77 

910  OPENS,4:PRINT#5,CHR$(27) ;CHR$(TG) 

915  CLOSES 

920  RETURN 

925  REM****** 

930  REM       INCREMENT  SR 

935  REM****** 

940  C0%=C0%+1 

945  IFCO%>127THENCO%=32 

950  GOSUB485 

955  RETURN 

960  REM****** 

965  REM       DECREMENT  SR 

970  REM****** 

975  C0%=C0%-1 

980  IFC0%<32THENC0%=127 

985  G0SUB485 

990  RETURN 

995  REM****** 

1000  REM       INPUT  C0%  SR 

1005  REM****** 

1010  GOSUB1165 

1015  IN=VAL(IN5) 

1020  IFIN<32THENIN=32 

1025  1PIN>127THENIN=127 

1030  CO%=INT(IN) 

1035  GOSUB485 

1040  RETURN 

1045  REM****** 

1050  REM       EDIT  SR 

1055  REM****** 

1060  POKE224,0  80:POKE225,128:POKE226,1; 

-iPOKE245,l 

1065  N=0:A$="" 

1070  POKE548,0 

1075  GETA$:IPA$=""GOTO1075 

1080  IFA$=">"THENN=N+1:GOTO1120 

10.85  IFA$="<"THENN=N-1:GOTO1120 

1090  IFA$="""THENN=N-5:GOTO1120 

1095  IPA$="""THENN=N+5:GOTO1120 

1100  IFA$="i"THENPRlNT''i-«";  :N=N+1; 

-nGOTOll20 

1105  IFA$="  "THENPRINT"  <";:N=N+1: 

-.GOTO1120 
1110  1FA$="*"THENPOKE548,1:GOSUB570: 


1115 

1120 
1125 
1130 

1135 
1140 


1145 
1150 
1155 
1160 
1165 
1170 
1175 

1180 
1185 
1190 
1195 

1200 

1205 
1210 
1215 
1220 

1225 
1230 
1235 

1240 

1245 

1250 
1255 
1260 
1265 
1270 
1275 
1280 
1285 
1290 
1295 
1300 
1305 
1310 
1315 
1320 
1325 
1327 
1330 
1335 
1340 

1345 

1350 

1355 
1360 


-.GOT01155 
IFA$=''C"THENPOKE548,1:GOSUB1205: 

-.GOSUB485:GOTO106  0 
POKE514,0:WAIT514,6 
IFN<0ORN>3  4THENN=0 
NC=N:NL=INT((N/5) ) 
IFNC>4THENNC=NC-5 :G0T01135 
POKE224, (SL%{NL)) :POKE225f (SH%(NL) ) 

-.:POKE226,  (CC%(NC))  :POKE245, 

-iCLC%(NL)) 
SPOT=25  6  *SH% { NL ) +SL% ( NL) 4CC% ( NC) 
GOTO1070 
RETURN 
REM****** 
REM       GENERAL  INPUT  SR 

REJ(****** 

POKE224 , 24 :POKE225 , 129 : POKE226 ,19 : 

-.POKE245  ,  7  :  POKE005  ,19 
PRINT"  -^^^-^-^-e^-^CMD?"; 

IN$="  ":ZT=TI:ZC=2:ZD$=CHR$(20) 
GETZ$ :  IFZ  $<>  "  ''THENGOTO1220 
IFZT<TITHENPRINTMID$(''  i",ZC, 

-il)  ;"<"}  :ZC=3-ZC:ZT=TI+10 
GOTO1190 

BT=BA+2+(5*(CO%-32)) 
F0RI=BTT0CBT+4) :POKE1,0:NEXTI 
RETURN 
Z=ASC<Z$) :ZL=LEN(IN$) :IFCZAND127) <3 

-.2THENPRINT"-«";  :GOT01235 
IFZL>254THENGOTO1190 
IN$=IN$+Z$:PRINTZ$;ZD$;Z$; 
IFZ=13THENIN$=MID$(IN$,2) :PRINTCR$; 

-.:  RETURN 
IFZ=20ANDZL>1THEN1N$=LEFT$(IN$, 

-.ZL-1)  :PRINT"4";:GOTO1190 
IFZ=141THENZ$=CHR$(-20*(ZL-1) ) : 

-iFORZ  =  2TOZL:PRINTZ$;:NEXTZ:GOT01165 
GOTO1190 

RE[iJ****** 

REM  TEST   SR 

REM****** 

OPENS , 4 : PRINTiS , CHR$ ( 27 ) ; CHR$  C 50 ) 

FORN=32T0127:PRINT#5,CHR$(N) ; : NEXT 

PRINT#5: CLOSES 

RETURN 

REM****** 

REM       END 

REM****** 

PRINT "fi ": CLOSEl : CLOSES : END 

REM****** 

REM       TABLE  SR 

REM****** 

OPENS , 4 

PRINT#5,CHR$(27) ;CHR$(106) ; 

FORI=0TO95 

PRINT#S,CHR$(27) ;CHR${77) ; 

PRINT#5,  "CHR$('';l+32;")    ";CHR$(34 

-.);CHR$(13); 
PRINT#5,CHR$(27)  ;CHR$(76)  ;"         -, 

";CHR?(I+32) ;CHR${13); 
PRINT#5,CHR$(27) ;CHR$(77) ;" 

";CHR${34) ;" 
PORK=0TO4 
J=BA+2+(I*5)+K:PRINT#5,PEEK(J)  ;  "   -. 


1365  NEXTK 


^34 


COMPUTEI 


Februarv,  1982.  Issue  21 


1370    PRINT#5 
1375    NEXTI 


13  80    CL0SE5: RETURN 
READY. 


Program  2.  PSEUDO-PET   CHfiRflCTER   SET 

115  DflTfl27.75.  0.  0,  0.  0.  0.  127. 127. 127,  0,  0.  120,  120, 120, 120, 120,  1,1.1,1,1 

120  DflTfi64,64,64,64,  64, 127,0,  0,  0,  0,  85,42..  85,  42,85,  0,0,0,  0,127,80^0.80,40,80 

125   DflTfll27,63,  15,3,  1,0,0,0,127,127,0.0,  127,8,8,0,  0,120,120,  120,  0,0.15,8,8 

130  DFITR8,3,120,  0,  0,  36,  96,96,  96,96,  0,  0,  120,8.8.8,8.  15,8,8,8,8,120,8,8 

135  DRTft8,S,127,  0,0,127,127,0,0,0,127,127,  127,  0,0,  0,0,127,127,127 

140  DflTfl3,3,3,3,3,7,7,7,7,7,  112,112,112.112,112,64,64,64,64,127 

145  DRTfil20,120,  120,  0,0,0,  0,15,  15,15,8.8,  15,0,0,15,15,15,0,0,  15,15,127,120,  120 

150   DflTfl8, 8,8,8,8.28, 14,  127,14,28,  0,127, 127, 0,0,24,24,24,24,24,12, 12, 12, 12, 12 

155  C"fiTfl2,2,2,  2,2,48,48,48,48,  43.  0.  127,  127,  0.0,0,  0,127,127,  0,8,8,112,  0,0,0,0,7 

160   DflTfl8,8,8,S,7,  0,  0,127,64,64,64,64.3,4,8,  16,96,96,  16,8,4,3,127.  1,1,1,1 

165   DRTfll,  1,1.1,127,62,  127,127,127,62.32,32,32,32,32,12,30,60,30,  12 

170   DflTflO,  127,  0,0.  0,  0.0.  112,8,8,99,20.8,20,99,62,65.65,65,62.28,  10,127,10,28 

175   DFITftO,  0,0,  127,  0,  12,30,63,30,  12,8,8,  127,8,8,85,42,85,0,  0.  0,0,  127,  127,  0 

180   DflTfl4,  126,  2, 126,  3, 1 ,  7, 15,  63, 127 

185  DflTflO,  0,0,  0,  0,127,  127,  127,  0,  0, 120, 120,  120.  120,  120, 1,  1, 1,  1, 1 

190  DflTfl64, 64,  64,64,64,127.-0,  0,0,0,85.42,85,42,85,0,0,0,0,127,80,40,80,40,80 

195  DflTfll27,63, 15,3,1,  0,0.0,127,127,0,0,  127,8.8,0,0,120,120,  120,0,0,15,8,8 

200  DRTRS..  8, 120,0.  0,96,96,96,96,96,  0,0,  120,8,8,8,8.  15,3,8,8,8.120.8.8 

205  DRTflS, 3. 127, 0, 0,  127,  127,  0,  0, 0,  127, 127, 127, 0, 0, 0, 0. 127, 127, 127 

210  DRTfl3,3,3,3,3.7,7,7,7.7,112,  112, 112, 112,112,64,64,64.64,127 

215  DRTfll20, 120,  120,  0, 0,  0,  0, 15,  15, 15,  8,8,  15, 0, 0, 15, 15, 15,  0, 0, 15, 15, 127, 120, 120 

l«"_i  ■$.  I»r  Ihih-r-^HII  I— -Ji  '-"^-fl— -.1  1-,  '••'LS/ni-*!  rXD-fil^+S  llfl    I --J  is;   l«r  Ih.H.r^T-ll  I  |-*.J,  ■-'•%, 


SOFTWARE  THAT  WORKS  FOR  YOU 


filemaster  ii 
Massage 
SNAPSHOT 
viCheck 


MENU 
Orion 
PDUP 
viCalc 


WPM 
M.A.S. 
VPM 
viCat 


software  by  sasso,  p.o.  box  969.  loguna  beach,  ca  92652 
(714)  497-2000        ^^^i^^^     DEALER  INQUIRIES  INVITED 


February.  1982,  Issue  21 


COMPUTEI 


136 


Marquee 

Mark  Bernstein 
DepQrtnnent  of  Chennistry 
Harvard  University 


Editor's  Note:  Although  Mr.  Bernstein's  annotated 
source  code  starts  at  address  $7000  (28672  decimal),  we 
have  included  a  BASIC  loader  (Program  1)  which  places 
the  routine  at  $0360  (864  decimal)  for  those  who  have 
less  RAM  memory  or  prefer  the  convenience  of  storing 
machine  language  routines  in  the  second  cassette  buffer. 
The  screen  size  is  set  for  40  and  the  speed  is  5.  For  an  80 
column  screen,  POKE  864,80  and  to  change  the  speed, 
POKE  866, X.  To  test  the  routine,  at  this  location,  you 
would  type  SYS  1008.  —  RTM 


The  video  display  is  a  programmer's  canvas.  In  this 
small  space  the  programmer  must  communicate, 
inform,  and  perhaps  entertain  and  enthrall.  But, 
like  all  artists,  programmers  must  work  within  the 
confines  of  their  frame  and  the  limits  of  their 
medium;  all  too  often,  the  TV  screen  seems 
cramped  and  small. 

All  programmers  must  adjust  to  and  accomo- 
date the  limitations  of  their  computer's  display. 
When  using  machine  language,  though,  program- 
mers must  often  work  with  awkward  and  clumsy 
tools.  BASIC,  PASCAL,  FORTH  and  the  like 
provide  simple  amenities  like  carriage  returns, 
automatic  spacing  and  tabs,  while  machine  language 
leaves  programmers  to  do  all  the  work  themselves. 
High  level  languages  let  programmers  think  in 
terms  of  character  strings  and  display  lines;  assem- 
bly language  programmers  must  think  of  individual 
symbols  and  screen  locations. 

In  simulation  and  game  programming,  screen 
design  can  become  a  contest  between  graphics  and 
text.  An  abundance  of  information,  some  vital, 
some  merely  interesting,  competes  for  space  within 
the  screen's  limited  frame.  Intricate  graphics  and 
display  modes  can  compress  lots  of  information 
into  a  small  space  —  a  picture  is  worth  a  thousand 
words  —  but  usually  demand  intricate  and  time- 
consuming  programming.  Often  the  special  pro- 
gramming is  simply  not  worth  the  effort,  and  so 
the  display  has  to  be  pruned.  Information  that 
won't  fit  on  the  screen  remains  forever  hidden 
inside  the  computer. 

Scrolling  Text 

The  programmer's  art  ought  not  to  be  limited  by 
the  confines  of  the  machine,  only  by  skill  and  imag- 
ination. One  useful  soludon  to  this  conflict  between 


the  informadon  and  display  space  is  the  marquee,  a 
small  area  of  the  screen  across  which  text  scrolls 
from  right  to  left.  The  whole  message  doesn't  have 
to  be  displayed  at  one  time,  so  less  space  needs  to 
be  reserved  for  text  and  more  area  can  be  used  for 
graphics.  Long  and  short  messages  can  be  displayed 
with  equal  ease.  And  users,  trained  by  long  years  of 
watching  scoreboards,  advertising  displays  and 
theatre  marquees,  find  scrolling  displays  easy  to 
understand  and  to  use. 

Using  Interrupts 

The  computer  takes  only  a  few  milliseconds  to 
write  a  conventional  message  on  the  screen.  Nor- 
mally, writing  occupies  the  computer's  complete 
attention,  and  everything  else  must  wait  until  the 
whole  message  has  been  displayed.  But,  since 
computers  can  write  very  quickly  and  people  read 
comparatively  slowly,  most  of  the  computer's  time 
remains  free  for  data  processing. 

Marquee  displays,  on  the  other  hand,  are 
intimately  ded  to  human  reading  speed.  The  com- 
puter needs  very  little  time  to  update  the  marquee, 
and  could  add  a  new  letter  a  thousand  times  a 
second.  If  the  computer  wrote  at  full  speed,  the 
message  would  whiz  across  the  screen,  an  illegible 
blur.  To  be  useful,  the  marquee  must  move  slowly.. 

Long  marquee  displays  require  many  seconds, 
even  minutes.  This  delay  would  be  unacceptable  if 
the  compiuer  were  continuously  occupied  while 
displaying  the  message.  The  computer  should  not 
have  to  wait  for  the  slow  human  reader.  Instead, 
useful  work  can  be  accomplished  in  the  long  inter- 
vals between  marquee  updates. 

We  use  a  programmable  timer  to  interrupt  the 
computer  periodically.  A  few  times  each  second 
this  interrupt  instructs  the  computer  to  advance 
the  marquee  one  step.  The  computer  spends  the 
rest  of  the  time  running  its  program  normally  and 
returns,  after  each  marquee  update,  to  the  task 
that  was  interrupted. 

An  important  benefit  of  this  interrupt-driven 
strategy  is  transparency.  Conventional,  all-at-once 
output  is  simple  and  modular.  The  user's  program 
calls  an  output  roudne,  the  output  routine  writes 
the  specified  letters  on  the  screen,  and  then  control 
returns  lo  the  user's  program.  To  make  marquees 
easy  for  the  progranmier,  they  should  seem  (to  the 
programmer)  to  work  just  like  normal  output 
routines. 

Interrupts  make  marquee  displays  as  easy  to 
use  as  normal  output  routines.  Conventional  tou- 
tines  do  the  writing  immediately;  the  marquee 
controller  arranges  for  the  periodic  interrupts 
which,  without  further  intervention  from  the  pro- 
gram, will  draw  the  message  on  the  marquee. 


136 


COMPUTEI 


Febfuarv.  1982.  Issue  21 


The  Marquee  Generator 

Figure  1  shows  the  structure  of  a  user  program 
which  invokes  the  marquee  generator.  The  user 
program  can  activate  the  marquee  by  calling  STOP. 
When  the  marquee  is  active,  periodic  interrupts 
divert  the  computer's  attention  from  the  user's 
program  (left  column)  to  the  intet^rupt  service 
routines  (right  column). 


Figure  1. 

The  user  doesn't  have  to  control  the  marquee  directly. 
Instead,  periodic  interrupts  invoke  IRQSRV,  which  decides 
whether  the  marquee  should  be  updated.  Updates  are  handled 
by  invoking  SCROLL. 


User 
Program 


Interrupts 


if^ 

^^^ 

^^^ 

^m 

^^^a 

^^^s 

^S 

^^^^ 

^^ 

^^CT 

^^^ 

H 

START 

^^ 

hSsehIJ 

^^E 
^R 

I 

P 

enable  the  marquee 


IROSRV 


SCROLL 


I  add  a 
letter 


w:j?™:^:^^.wpi;^r:Tr?7— rr 


IRQSRV 


U> 


fno  effect  on  marquee/ 


disable  the  marquee 


STOP 


Figure  2  represents  the  logic  of  the  marquee 
interrupt  system  in  more  detail.  ,A  programmable 
timer  creates  periodic  interrupts  (represented  as 
marbles)  at  regular  intervals.  When  the  marquee  is 
inactive,  control  falls  directly  into  the  computer's 
"normal  interrupt  handler"  which  ultimately  re- 
turns control  to  the  user  program. 

When  the  marquee  is  active,  interrupt  pro- 
cessing is  diverted  through  IRQSRV,  which  decides 
whether  or  not  to  update  the  marquee.  If  no  update 


is  necessary,  control  passes  directly  to  the  normal 
interrupt  handler.  If  the  marquee  is  to  be  updated, 
IRQSRV,  invokes  SCROLL  before  allowing  control 
to  revert  to  the  normal  path. 


Figure  2: 

In  this  drawing,  interrupts  are  represented  by  marbles 
rolling  downhill  through  troughs.  When  the  marquee  is  not 
active,  IRQSRV  is  disconnected  from  the  interrupt  system 
and  control  passes  directly  to  the  normal  interrupt  handler. 
Activating  the  marquee  inserts  IRQSRV  and  SCROLL  into 
the  interrupt  path. 


Figure  3. 


yiNNER  SHOULD  BE  READY  IN  3  MIN.     .  .  ITS  RAINING - 


ROOM 
6 

FACING 
NORTH 


.  YOU  HEAR  DISTANT  SILVER  BELLS  TO  THE  NOR 


For  PET  and 
CBM  owners 
only: 

This  is  just  1  of  20 
pages  of  the  newest 
and  biggest  Skyles 
catalog,  hot  off  the 
press. 

We  know  you'll  want 
this  page,  in  its  full 
8 '72  X  10  splendor, 
and  another  19 
pages  of  [peripherals, 
software  and  books 
that  will  make  your 
PET  or  CBM 
computer  even  nicer 
to  live  with.  So,  if 
we  missed  sending 


Old^ 


^<^<>:>^ 


.<^^ 


■s^* 


,,^..e. 


t>g5>^ 


^5'.«;^- 


^^Iso'*' Ioc^^;o\<s^ 


'i>*':'^^<^;^S^?'' 


$^kSS5?^ 


g\*^ 


o<^ 


n'o>>^\^o<«fGO' 


.•JB^ 


^^€y^       ..o.-^ 


c,Y--i' 


i\e* 


C»^*^ 


V^ 


,(<^' 


^<^' 


>»^" 


pt^^i'^* 


Ml® 


60 


.«^Ih-^> 


^<^^^ 


,e^ 


X)S 


&»' 


So'°'  ,ttf> 


C° 


,^'' 


i\« 


,ve 


^.i^' 


:eS^"   4l^* 


>^^' 


vOl^'e'-*":,.^^"^^* 


o**,.5«;\'^ 


9^^^ 


,%: 


SP 


tS°S^^^l.*^^^^ 


o^' 


t>* 


c^e^ 


.^'^IV 


GO' 


,(^«' 


•S^ 


M*^^ 


\t^ 


,\e* 


otC 


V°^'v«v«' 


s-'i^r^" 


-9'°.^^' 


GO' 


,t^'' 


i\e^ 


.ie 


>s^^' 


A<*^' 


A^' 


you  your  very  own 
copy  within  the  last 
few  weeks,  call  us  at 
(800)  227-9998 
(unless  you  live 
in  California,  in 
wiiich  case  call 
(415)  965  1735. 


From  Skyles 
Electric  Works,  the 
oldest  and  largest 
professional 
specialists  in  the 
business. 


(h  Skyles  Electric  Works 

E  231-E  S.  Whisman  Road 
^^  Mountain  View,  California  94041 


138 


COMPUTEI 


FebnjQiY,  1982.  Issue  21 


Program  1  presents  an  implementation  of  the 
marquee  system  for  the  Upgrade  ROM  PET.  The 
user's  program  calls  START  when  it  wants  to  put  a 
message  on  the  marquee.  START  initializes  several 
variables  and  constants  and,  most  importantly, 
routes  all  further  interrupt  requests  via  the  mar- 
quee update  controller  IRQSRV. 


Program  1. 

800  FOR  ADRES= 
POKE  ADRES 
S 

DATA  40,  0 
DATA  5,  4  0 
DATA  128, 
04 

DATA  96,  3 
DATA  3,  20 
DATA  192, 
0 

DATA  101, 
DATA  255, 
DATA  169, 
8 

DATA  10  3, 
DATA  96,  3 
DATA  101, 
DATA  96,  1 
DATA  0,  16 
DATA  141, 
DATA  141, 
DATA  141, 


864 
870 
876 

882 

888 
894 

900 
906 
912 

918 
924 
930 
936 
942 
948 
954 
960 

966 
972 
978 

984 
990 
996 
1002 


864TO1023:READ  DATTA : 
,DATTA:NEXT  ADRE 

,  5,  85,  228,  7 

,  160,  1,  185,  0 

153,  255,  127,  200,  2 

,  -208,  244,  32,  161 
5,  97,  3,  240,  15 
255,  240,  11,  200,  14 

3,  172,  96,  3,  153 
127,  96,  172,  96,  3 
32,  153,  255,  127,  23 

3,  173,  103,  3,  205 
,  176,  48,  96,  172 
3,  177,  0,  41,  191 
41,  0,  0,  142,  1 
9,  0,  141,  103,  3 
101,  3,  173,  144,  0 

99,  3,  173,  145,  0 

100,  3,  120,  169,  223 


DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 


141,  144,  0,  169,  3,  141 
145,  0,  88,  96,  120,  173 

99,  3,  141,  144,  0,  173 

100,  3,  141,  145,  0,  88 
96,  206,  102,  3,  16,  9 
32,  104,  3,  173,  98,  3 

141,  102,  3,  108,  99, 


3 
169 


1008  DATA  162,  3,  169,  248,  32, 
1014  DATA  3,  96,  77,  65,  82,  81 
1020  DATA  85,  69,  69,  0,  0,  70 


The  PET's  6522  timer  generates  interrupts  60 
times  per  second.  While  the  marquee  is  active, 
these  interrupt  requests  invoke  IRQSRV.  This 
routine  decides  whether  or  not  it's  time  to  update 
the  marquee;  the  speed  of  the  marquee  display  is 
determined  by  the  variable  RATE,  which  specifies 
the  number  of  interrupts  which  will  occur  between 
marquee  updates.  By  adjusting  RATE,  the  mar- 
quee's progress  may  be  speeded  up  or  slowed 
down. 


If  IRQSRV  decides  not  to  update  the  display, 
it  jumps  to  the  computer's  normal  interrupt 
handler,  whose  address  is  stored  in  OLDIRQ.  If 
IRQSRV  decides  to  update  the  display,  it  calls 
SCROLL  before  returning  control  to  the  machine's 
normal  procedures. 

SCROLL  alone  actually  writes  and  updates  the 
marquee.  SCROLL  first  moves  each  character  on 
the  marquee  line  one  space  to  the  left.  Next, 
SCROLL  calls  GETCHAR,  which  locates  the  next 
character  in  the  message.  The  new  character  is 
tacked  onto  the  right-hand  edge  of  the  message 
before  SCROLL  returns  to  IRQSRV. 

A  special  character,  END  (usually  00,  the 
ASCII  NUL  character),  marks  the  end  of  each 
marquee  message.  When  SCROLL  encounters  the 
end  of  a  message,  it  starts  tacking  blanks  onto  the 
end  of  the  marquee  line.  Eventually  all  the  text  will 
travel  off  the  left  edge  of  the  screen,  leaving  the 
marquee  blank;  at  this  point,  SCROLL  auto- 
matically invokes  STOP  to  disable  future  marquee 
updates. 

For  Other  Computers 

The  marquee  routines  described  here  can  be  used 
on  many  6502  systems  with  little  or  no  change. 

Different  model  PET's  are  easily  accomodated. 
The  only  ROM-dependent  instruction  is  the  ad- 
dress IRQVEC,  the  page-zero  location  throtigh 
which  the  PET  vectors  its  interrupts. (It's  the  same, 
$90,  81  in  4.0  BASIC.  For  Original  PETs,  use 
$0219,  021  A]  80-column  computers,  of  course,  can 
have  80-character  marquees;  simply  change  the 
value  in  LENGTH  to  80. 

Other  computers  should  also  be  able  to  use 
this  marquee  system.  The  basic  requirements  are  a 
memory-mapped  display  and  a  source  of  periodic 
interrupts.  Many  single-board  computers,  for 
example,  use  the  6522  VI  A/timer  which  does  this 
job  admirably.  Apple  users  will  need  to  add  an 
expansion  boaid  if  one  of  their  current  accessories 
won't  do  the  job.  Several  Apple  parallel  port  I/O 
boards  include  the  6522;  additionally,  some  time-of- 
day  clock  boards  can  generate  periodic  interrupts 
to  drive  the  marquee. 

Finally,  note  that  marquees  might  be  used  in 
several  different  ways.  They  need  not  occupy  an 
entire  line;  to  use  only  a  part  of  a  line,  simply  change 
LINE  (the  address  of  the  left  end  of  the  marquee) 
and  LENGTH  (the  length  of  the  marquee).  The 
marquee  may  appear  anywhere  on  the  screen, 
although  the  top  (used  here)  and  bottom  lines  are 
likely  to  be  most  popular.  Several  marquees  might 
appear  on  the  same  screen!  Finally,  note  that 
marquees  may  move  very  rapidly  (for  speed  reading 
practice?),  and  are  not  limited  to  text,  suggesting 
several  interesting  possibilities  for  unusual  graphics. 


NEW  FROM  CYBERIA  •  NEW  FROM  CYBERI 


cMm 


A  comprehensive  accounts 
receivable  and  insurance 
billing  system  for  modern 
health  care  offices 
and  clinics 

Ut:SlGNED  FUR  COMMODORE  8000  SERIES 
COMPUTERS  AND  DiSK  DRIVES 

Help  functions  are  always  on-line 

Supports  CPT,  ICD  and  RVS  medical 
coding 

Supports  open  item  or  balance  for- 
ward accounting  systems 

Interfaces  to  popular  word  processing 
programs 

Multiple  terminals  may  be  added  with 
Superbus  4.0 

Multiple  disk  drives  may  be  used— no 
limit  on  number  of  patients  or 
accounts 


ERiA 


■  Includes  a  data  base  and  forms 
generator  to  fill  out  any  insurance 
form 

■  Includes  a  computer  aided  instruction 
program  to  train  new  users 

Includes  these  standard  reports: 

■  A/R  aging  II A/R  transactions 

■  General  ledger  ■  Instant  cash  receipt 

■  Income  analysis  by  physician 

■  Doctor  referral  report 

■  Patient/account  cross  reference 

■  Standard  SuperBill  insurance  form 


Commodore  Computer 
Networking  System 

I  Up  to  18  computers  can  be  interconnected 

I  Multiple  disk  drives,  printers  and  other  devices 
may  be  added  to  the  network 

Sophisticated  security  system  prevents  unauthor- 
ized use 

WordPro  and  Wordcraft  programs  are  supported 
to  allow  multiple  terminal  word  processing 

•WordPro  is  a  trademark  of  Professional  Software,  Inc. 


f|HE„2330  LINCOLN  WAY,  AMES,  I A  50010  •  515-292-7634 


140 


COMPUTEI 


February.  1982.  Issue  21 


Program  2. 


7000-   28 


peei-  ee 


7602-  05 


7003-  00  08 


7005-  09 


7006-  00 


7007-  30 


0010 
0620 
0500 
0501 
0502 
0503 
SSBA 
0518 
8511 
0512 
0513 
0514 
0520 
0521 
0522 
0523 
0524 
0525 
0538 
0531 
0532 
0533 
0534 
0535 
0548 
0541 
6542 
0543 
8544 
8545 
8550 
0551 
8552 
0553 
B554 
B55€ 
0S57 

05e0 

8561 

0562 
0563 
0564 
0565 
0566 
0578 
0571 

es?2 

0573 
0574 
0575 
0576 
8589 
0581 
0562 
0583 
6584 
0585 
05S6 
0567 
0598 
0591 
0592 
0593 
0594 
0596 
0597 
0598 
0599 
0600 

0601 

0602 
0603 
0604 

0685 
0606 
0607 
0608 
0609 
0999 
1088 

1001 
1002 

1803 
1004 

1005 

1006 
1807 
1008 
1809 
1018 
1011 
1812 
1013 
1014 
1015 
1016 
1017 
1018 
1019 
1028 
1838 


. Bfl  *7000 
.OS 


CLOBflU  VfiRIflELES 


LINE  =  ADDRESS  OF  LEFT  END  CF 

THE  MESSftGE  DISPLFiV  LINE 

CINE  .HE  «3880 

LEMCTH  =  NUMBER  CF  CHHRflCTERS 
PER  LINE  FOR  THIS 
COMPUTER'S  VIDEO  DISPLftV 


LENGTH 


.BV  48 


END  =  SVMEOL  TO  INDICATE 

THE  END  OF  THE  MESSAGE 
<    ftSCII  NUL  ) 

END        .BV  08 

;  RATE  -     NUMBER  OF  1/S0'THS  SECONDS 
;        TO  ELAPSE  BETWEEN  D!S- 
PLflV  UPDATES. 

RATE      .BV  5 

.'    IRfiVEC  =  ADDRESS  WHERE  TfC 

COMPUTER  STORES  THE 
ADDRESS  OF    ITS    INTERRUPT 

;  SERVICE  ROUTINE. 

IRQVEC  .DE  f90 

OLDIRQ  =  BUFFER  FOR  STORING  THE 
COMPUTER'S  NORMAL 
NORMAL  INTERRUPT  SERVICE 
ROUTINE. 

OLDIRQ     .BV  0  0 

POINTR  =  PAGE  ZERO  POINTER 

TO  THE  START  OF  THE 
STRING  WHICH  THE 
COtlPUTER  WILL  DISPLRV. 

POINTR     .DE  0 

HflR  =  COUNT  OF  CHARACTERS 

WRITTEN  TO  THE  MARQUEE 
TO  DATE.   RESET  EV  START, 
UPDATED  BV  SCROLL.  USED 
BV  GETCHAR. 


IROCNT 


IRQCHT 


.BV  0 

COUNT  OF  INTERRUPT 
RESUESTS  TO  BE  SKIFI^ED 
BEFORE  ADVANCING  THE 
MARQUEE.   USED  ONLV  BV 
IRQSRV. 

.BV  0 


AFTER  =  COUNT  OF  CALLS  TO  'DONE' 
'DONE'  APPENDS  BLANKS  TO 
THE  MARQUEE  UNTIL  THE 
ENTIRE  MfiRQUEE  IS  ELWK. 
'DONE'  THEN  DISABLES  THE 
MARQUEE  BE  INVOKING 
'STOP'. 


AFTER 


.BV  0 


SCROLL 

DISPLAY  R  'TIMES-SQUARE'  STVLE 
MESSAGE  LINE. 

'SCROLL'  IS  CALLED  PERIODICALLV 
EV  AN  INTERRUPT  SERVICE 
ROUTINE,  AND  ADVANCES  THE 
DISPLflV  ONE  NOTCH  PER  CALL. 


SCROLL  IS  NOT  USUflLLV  CALLED 
EV  THE  USER. 

INSTEAD,  THE  DISPLAY  IS  TUR'ED  OH 
EV  CALLING  'START'. 

AFTER  THE  ENTIRE  MESSAGE  IS 
DISPLAVED,  THE  DISPLAV  ROUTINE 
TURNS  ITSELF  OFF.   IT  CAN  BE 
DEACTIVRTED  AT  ANV  TIME  BV   - 
CALLING  'OFF'. 


1039 

1140 

SCROLL 

1150 

7008- 

A8 

01 

1168 

LDV  #1       ;  LEFT-MOST  CHARACTER 

1178 

1180 

SCROLL! 

780A- 

B9 

08 

68 

1190 

LDA  LIN£,V 

700D- 

99 

FF 

7F 

1210 

STA  LIN£-1,V 

70)0- 

C8 

1228 

INV 

7011- 

CC 

00 

70 

1240 

CPV  LENGTH   ;  MOVED  ENTIRE  LINE 

7 

?ei4- 

KB 

F4 

1250 
1260 
1270 
1271 
1272 

;  GET  THE 
;   TO  EE 

BNE  SCROLLl   ;  REPEAT  'TIL  DONE 

NEXT  CHARACTER 
DISPLAVED 

7016- 

20 

41 

76 

1280 
1298 
1291 
1292 

;  GETCHAR 
i   TER  IN 

JSR  GETCHAR 

RETURNS  THE  NEXT  CHARAC- 
A  AND  THE  TOTAL  NUMBER 

1293 

;   OF  CHARACTER  DISPLAVED  SO  FAR 

1294 

,   M  V, 

1295 

1296 

;  NOW  WE 

:hECK  for  THE  END  OF 

1297 

;   TtC  MESSAGE,  WHICH  HAPPENS 

1298 

;   AFTER 

THEN  'END-  CHARACTER 

1299 

;   OR  AFTER  256  CHARACTER  HAVE 

1308 

;   BEEN  DISPLAVED. 

1301 

7019- 

CD 

01 

70 

1304 

CMP  END 

70IC- 

F0 

OF 

1310 
1312 

EEQ  DONE 

701E- 

ce 

FF 

1329 

CPV  «*FF 

7020- 

F0 

SB 

1322 

1324 

BEQ  DONE 

1338 

,  UPDATE  AND  SAVE  CHARACTER  POINTER 

?022- 

C8 

1340 

INV 

7023- 

ec 

05 

78 

1350 
1360 
1370 

'■  PUT  THE 

STV  CHAR 
NEXT  CHARACTER  OH  SCREEN 

7026- 

AC 

00 

76 

1388 

LDV  LENGTH 

7029- 

99 

FF 

7F 

1408 
1410 

STA  LINE-1,V 

702C- 

60 

1478 

1500 

1501 
1502 
1503 

RTS 

'  DONE 

1520  DONE 

702D- 

AC 

00 

78 

1530 

LDV  LENGTH   ;  END  OF  LINE 

7038- 

A9 

20 

1540 

LDA  i*28     ;  BLANK 

7032- 

99 

FF 

7F 

1338 
1560 

STA  LINE-1,V 

1561 

INCREMENT  AFTER 

1562 

QUIT  WHEN  AFTER>L£NGTH 

1563 

7035- 

EE 

07 

70 

1570 

INC  AFTER 

7838- 

AD 

07 

70 

1580 

LDA  AFTER 

783B- 

CD 

00 

70 

1390 

CMP  LENGTH 

7e3E- 

B0 

30 

1606 
1610 

ECS  STOP 

7040- 

66 

1620 
1800 
1881 
1802 
1883 

RTS 

GETCHAR 

"~    -        1 

1884 

OET  NEXT 

CHARACTER  FROM 

1805 

MESSAGE 

STRIHO 

1306 

1807 

RETURNS 

THE  CHARACTER  IN  A 

1808 

AND  THE 

TOTAL  CHARACTER  COUNT 

1809 

IN  V. 

1810 

7041- 

AC 

05 

70 

1830  GETCHAR 

LDV  CHAR 

7044- 

El 

00 

1840 
1850 

LDA  CPOINTR),V 

1851 

THE  FOLLOWING  CONVERSION  APPLIES 

1852 

ONLV  TO 

THE  COMMODORE  PET. 

1S33 

IT  TRANSLATES  ASCI!  STRINGS  INTO 

1854 

THE  PET' 

S  "SCREEN  CODE" 

1856 

7046- 

29 

BF 

1868 
1870 

AND  #*EF 

7048- 

60 

1860 
3000  , 

3001 

3002  , 

3003  , 

START 

RTS 

3804  , 

SET  VP 

A  NEW  MESSAGE  TO  BE 

3005  , 

SCROLLED  ACROSS  THE  SCREEN. 

3006 

3007 

THE  FOLLOWING  REGISTERS  MUST 

3003  , 

BE  LOADED  BEFORE  CALLING  START 

3809  , 

3818 

A  :  LSB 

OF  STRING  ADDRESS 

3811  , 

X  :  MSB 

OF  STRING  ADDRESS 

3812  , 

3013 

3814  , 

THE  DISPLAV  WILL  PROCEED 

3015 

AUTOMATICALLV  UNTIL  THE 

3816 

EHD-OF- 

MESSAGE  CHARACTER 

3817 

(STOREI 

IN  'END')  IS  FOUND. 

3018 

AFTER  THE  COMPLETE  MESSAGE  HAS 

3019 

BEEN  DISPLAVED,  THE  DISPLAV 

3820 

WILL  TURN  ITSELF  OFF. 

3021 

THE  DISPLAV  CAN  EE  DISABLED 

THE  ULTIMATE  RESIDENT  PROGRAM  MANIPULATION  SYSTEM  FOR  PET^/CBM"  MICROCOMPUTERS 


SYSRES"    EXTENDED    DOS   SUPPORT    COMMANDS 


0(type  "N"  keyboard) 
*-(lVpe  "B"  keyboard) 
I  (original  keyboard] 
>  (for  'wedge' users) 


These  commands  may  be  used 
intercbangably,  to  perform 
the  following  dos  support 
functions. 


Disk 


Printer 


Tape 


Directory    Modes    Command 


@N 


@D 
@C 
@R 

m 

@U: 
#L 


Function 


Display  disk  status/  send  command 

Format  (header)  a  new  diskette 

Force  initialize  diskette 

Validate  diskette  (collect) 

Duplicate  diskette 

Copy  or  concatenate  disk  filt(s)* 

Rename  file 

Scratch  rile(5)* 

List  directory** 

Reset  disk  drive 

List  disk  file  or  BASIC  program** 


Note;     Some  of  the  disk  utility  command  set  may  alsobe  used,  if  an  appropriate  directaccess  channel  has  been 
opened. 


*  Standard  com  m  and  with  added  options. 
Added  disk  command. 


SYSRES-    EXTENDED    EDITOR    COMMANDS 

Disk 

Printer 

Tape 

Directory 

Modes 

Command 

Function 

X 

X 

4 

/ 

Quick  load  from  disk 

X 

X 

4 

T 

Quick  load  from  disk  with  auto  run 

X 

X 

2 

APPEND 

Append  from  dis*  to  end  of  current  program 

X 

X 

4 

AUTO 

Auto  line  number  (allows  header] 

Load  machine  language  (binary)  file 

Load  and  execute  machine  language  program 

X 

3 

BLOAD 

k 

776 

CHANGE 

Change  pattern  to  another  pattern 
Close  one  or  all  files 

2 

CLOSE 

1 

CMD 

Set  output  to  file  (does  not  send  "READY.") 

4 

DELETE 

Delete  a  range  of  lines  from  program 

X 

1 

DUMP 

Oump  all  scalar  variables  to  screen  or  file 

X 

X 

2 

EXEC 

Execute  a  file  as  keyboard  commands 

X 

240 

FIND 

Find  occuranccs  of  a  pattern 

X 

X 

X 

3 
7 
1 
1 
1 

GET 
KEY 

KEYS 
KILL 
KILL* 

Read  a  sequential  file  into  editor 

Define  a  key  as  a  special  function 

Turn  key  functions  on 

Disable  SYSRES" 

Disable  SYSRES"  and  unreserve  memory 

X 

10 

LIST 

Improved  BASIC  LIST  command 

X 

X 

X 

3 

LOAD 

Defaults  to  disJ<  drive 

X 

X 

X 

2 

1 
1 

MERGE 

MON 

OLD 

Merge  from  disk  into  current  program 
Break  to  current  machine  language  monitor 
Restore  program  after  "NEW" 

X 

X 

X 

X 

24 

S 
2 

PUT 

RENUMBER 

RUN 

Send  program  to  disk  as  text  file 
Renumber  all  or  part  of  program 
Run  current  program,  ignores  screen  garbage 

X 

X 

X 

3 

SAVE 

Defaults  to  disk  drive,  allows  replace 

X 

X 

1 

SETD 

Set  disk  device  ,f^,  allows  multiple  drives 

X 

4 
4 

SETP 
TRACE 

Set  printer  channel,  format  mode,  paging 
Select  1  of  3  trace/step  modes  and  speed 

X 

X 

X 

3 

1 
1 

VERIFY 

WHY 

WHY? 

Compare  current  program  against  disk/tape 
Print  position  of  last  errc* 
List  line  of  break  or  error 

X 

X 
X 

1 

• 

Send  output  to  printer 

Display  current  version  of  SYSRES'" 

JUST  A  FEW  OF  THE  FEATURES  OF  SYSRES" 

*  Fast  up/down  scrolling  which  wofksl 

*  Advancetj  repeat-key  routlnel 

*  Re-define  any  or  all  keys  asany  keyword  (full  or 
short  form)  or  as  any  string  up  to  iss  characters 
long! 

*  Auto  line  numbering  which  can  feed  a  string  of  up 
to  1 27  characters  as  well! 

*  Extended  DOS  support  (requires  DOS  2A  or 
greater)] 

•Never  enter  another  file  namel  All  file  commands 
work  from  the  directory! 

*  Supports  multiple  disk  drivesi 

"List  BASIC  programs,  sequential  and  relative  files 
without  loading  them  into  memory! 

•TRUE  PROGRAM  MERGE  (overlay).  Supports 
subroutine  libraries  I 

*  Load  and  run  machine  language  programs  with 
parameter  pass ingi 

*  Supports  multiple  printers! 

*  Automatic  printer  output  with  paging  plus 
formatted  listings  with  full  ASCII  code  conversion 
including  cursor  control  and  special  characters  for 
non-CBM"  printers! 

'Edit  text  files  and  assembler  source  code  without 
leaving  BASIC! 

*  Renumber  part  of  a  program  or  even  change  the 
order  of  lines! 

*  Over  700  FIND/CHANGE  commands  including 
variable  names  ("A$"  will  not  match  "BA$"), 
pattern  matching  with  "wild-cards",  and  even 
commands  to  remove  spaces  and  REM'sl 

*  Three  TRACE  modes  Including  trace  variables! 

*  Doesnot  affect  BASIC  program  operation! 

*  One  AUTO-SOOT  DISKETTE  works  for  ALL 
PET"  or  CBM"  computers  (BASIC  2.0  or  greater 
with  at  least  Ifik  of  RAM.).  SYSRES"  requires 
NO  ROM  SPACE  or  extra  boards,  so  you  can  take  it 
with  you  If  you  want  touseanothercomputer.lt 
may  be  put  above  the  screen  If  you  have  RAM 
there.  It  boots  automatically  without  disturbing  any 
program  in  RAM! 

*  Diskette  and  Extensive  Manual-  only  $75  (cdn) 
Documented  Source  Code  (YES!)  -  $1 50  (cdn) 
Custom  versions  are  available  for  unique  systems! 

Dealer  enquiries  are  welcome. 


f^^  "^ 

[MaslerCatd] 

V  ^  j4 

CflNSOFT  DRTfl    INC. 

MICRCiCOMRUTER      SERVICES 

PROGRflnrilNG   *   CONSULTING   *  DESIGNING  *   EVflLUPlTING 
BOX   76752.    STN.S..    VANCOUVER.    B.C.    V5R  5S7  TEL :  ■;604)437-6e67 


142 


COMPUTE! 


February.  1982.  Issue  21 


3022 

;  EV  CflLLlHG  'STOP'  AT  fINV  TIME. 

3023 
3024 

3025 

3026 

;trrt 

3027 

STORE  THE  STRING'S  ADDRESS 

3028 

7649- 

SD  08 

08 

3039 

STfi  POIHTR 

?d4C- 

SE  Si 

ee 

3040 
3050 
3051 
3052 

STX  POINTR+1 
RESET  'RFTER'  flHB  'CHflR' 

704F- 

Fl9   00 

3060 

LDfl  #0 

7051- 

8D  07 

70 

3070 

STfl  AFTER 

7054- 

SB  es 

70 

3072 
3080 
3081 

3682 

STR  CHRR 
SAVE  OLIl  IRO  SERVICE  VECTOR 

?B57- 

ftB  90 

00 

3090 

LDfl  IRQVEC 

7e5B- 

es   03 

70 

3100 

STfl  OLD IRQ 

76511- 

fiB  91 

00 

3110 

LDfl  IRQVEC+1 

7068- 

SB  04 

70 

3120 
3130 
313! 
3132 

STfl  OLDIRO+1 
SET  UP  NEW  IRO  VECTOR 

7663- 

78 

3136 

SEI 

7664- 

H9  7F 

3140 

LDfl  #L,IRQSRV 

7066- 

8r  90 

00 

3150 

STfl  IROVEC 

7069- 

K)   70 

3160 

LDfl  KH-IRGSRV 

7068- 

811  91 

ee 

3170 

STfl  IRQV€C+1 

706E- 

58 

31SB 
3190 

CLI 

7e6F- 

68 

3200 
3500 

RTS 

3501 
3502 

STOP 

3303 

3504 

DISABLE  Tl€  AUTOMATIC  MESSAGE 

3505 

DISPLAY. 

3506 

3507 

STOP  CAN  BE  CALLED  DIRECTLV  BV 

3508 

THE  USER.   IT  IS  ALSO  IMVOKED 

3509 

EV  'DONE'  WHEN  THE  COMPLETE 

3510 

MESSAGE  HAS  BEEN  DISPLAVED. 

3511 

3520  : 

JTOP 

3521 

3522 

RESTORE  THE  ORIGINAL  IRQ  VECTOR 

3523 

7870- 

78 

3530 

SEI 

7071- 

flB  03 

70 

3540 

LDA  OLDIRO 

7074- 

SB  90 

00 

3542 

STA  IROVEC 

7077- 

fiB  04 

70 

3550 

LBH  OLDIRO+1 

707fl- 

eD  91 

00 

3552 

STfl  IRQVEC+1 

707D- 

58 

3560 
3570 

CLI 

7e7E- 

60 

3580 

4000 

BIS 

4001 

IRQSRV 

4862 



4003 

4084 

THIS  ROUTINE  IS  CALLED  WHENEVER 

4005 

4006 

A>  THE  PET  TIMER  CREATES  AN 

4067 

INTERRUPT  REQUEST 

4688 

4009 

B)   THE  MESSAGE  ROUTINE  HAS 

4010 

BEEN  ENABLED  EV  CALLING 

4011 

'START'-  AND  HAS  NOT 

4812 

VET  BEEN  DISABLED  BV 

4813 

CflLLING  'STOP'. 

4014 

4815 

THE  PET  TIMER  REQUESTS  AN 

4016 

INTERRUPT  60  TIMES  PER  SECOND. 

4017 

4822 
4029 
4030 

4031 

IRQSRV 

707F- 

CE  06 

70 

4040 

DEC  IROCNT 

7082- 

!8  09 

4650 
4068 
4061 

4062 

EPL  NORRAL 
CALL  DISPLflV  UPDATE 

7884- 

20  0S 

70 

4070 
4080 
4081 
4082 

JSR  SCROLL 
RESET  IRQ  COWTER 

7067- 

flB  02 

70 

4090 

LDfl  RATE 

70Sfl- 

SD  06 

70 

4168 

STfl  IRQCNT 

7680-  6C  03  70 


4118 
4120 
4121 

4122 
4123 
4130 
4140 
5808 
5001 
5002 
5003 
5805 
5006 
5007 
5008 


EXIT  THROUGH  THE  STfiNDARD 
INTERRUPT  SERVICE  ROUTINE,  WHOSE 
ADDRESS  IS  STORED  IN  'OLDIRQ'. 


NORMAL     JMP  (OLDIRO) 
SAMPLE  PROGRAM 


7090- 
7092- 


7094- 
7097- 


7098- 
709B- 
7a9£- 
70flt- 
70fl4- 
70fl7- 
7eflfl- 
70fiB- 
7880- 
70B3- 
70E6- 
70B9- 
78BC- 
70EF- 
70C1- 
70C4- 

?ec7- 

7eCA- 
7eCD- 
7eD0- 
70D3- 
79D6- 
70D9- 
70DB- 
70DE- 
70E1- 
70E4- 
70E7- 
70Efl- 
70EB- 
70F0- 
70F3- 
70F6- 
70F9- 
70FC- 
70FF- 
7102- 
7105- 
7168- 
7108- 
710D- 
7110- 
7113- 
7116- 
7119- 
71IC- 
71  !F- 


fl2  70 
AS  98 


28  49  78 
68 


4D  41  52 

51  55  45 
45  28  44 
49  53  50 
4C  41  59 

53  20  41 

52  45  28 
45  41  53 
59  20  54 
4F  28  50 
52  4F  47 

52  41  4D 
20  41  4E 

44  28 

43  4F  4E 

56  45  4£ 
49  45  4E 

54  20  46 
4F  52  28 
54  48  45 
28  55   53 

45  52  2E 
20  20 

54  4B  45 
59  23  41 
4C  4C  4F 

57  20  4C 
4F  54  53 
20  4F  46 
20  49  4£ 

46  4F  52 
4D  41  54 
49  4F  4E 
28  54  4F 
20  42  45 
28  44  49 

53  58  4C 
41  59  45 

44  20  49 
4£  20 

41  20  53 
4D  41  4C 
4C  28  53 
43  52  45 

45  4E  20 
41  52  45 
41  2E  08 


5609 
5610 
5012 
5020 
5022 
5030 
5031 
5032 
5040 
5056 
5110 
9000 
9001 

9002 
9803 
9004 
9005 
9006 
9010 


A  REGISTER. 


LBX  ttH,  STRING 
LDfi  #L, STRING 


CALL  'START'  TO  BEGIN  DISPLflV 
JSR  START 
RTS 


STRING  =  SflMPLE  STRINO  FOR 
TEST  PROGRAM. 


STRING 


9012 


.EV  'MARQUEE  DISPLAVS  ARE 


.BV  'EflSV  TO  PROGRAM  flND  ' 


.BV  'CONVENIENT  FOR  THE  USER. 


9013 


9014 


.BV  'THEV  ALLOW  LOTS  OF  INFOR' 


.BV  'NATION  TO  BE  DISPLAVED  IN 


9815 


9999 


.EV   'A  SMALL  SCREEN  flREfl.  '   6 


.EN 


LfiBEL  FILE-      C   /  •  EXTERNAL   : 


/LIHE=800e 

RflTE=700£ 

/POIHTR=00e0 

flFTER=7007 

DONE=702B 

ST0P=7e70 

TEST=7e90 

.'■/0eQ0,7l'52,712 


LENGTH=7e00 

.•'IROVEC-005e 

CHflR=7005 

SCROLL=700e 

GETCHAR=7041 

IRQSRV=707F 

STRING=709e 


END=7001 

OLDIRQ=7O03 

IROCKT=7006 

SCROLL  l-70eA 

STflRT=7049 

NORMAL=70SD 


TEST 

,  LOAD  THE  ADDRESS  OF  THE  MESSAGE 

;  TO  EE  DISPLflVED  INTO  THE  X  AND 


Using  /our  computer 

in  an  interesting 

application?    . 

Write  it  up  for 

other  COMPUTEI 

readers  to  use. 


DR.  DALEY  Introduces... 

THE  WIZ 

Data  Management  System 
THE  WIZ  is  here!!! 

THE  WIZ,  a  system  powerful  enough  to  manage  most  of  your  data  storage  and  manipulation 
needs  -  yet  is  easy  to  use,  A  system  we  are  so  sure  of  that  we  have  an  offer  you  can't  resist. 
First  though,  let's  take  a  look  at  a  few  of  the  many  features  of  this  program. 


Feature 

1.  ON-LINE  help 


Benefit 

At  your  fingertips  is  the  equivalent  of  a  60  page  manual.  At 
any  time  the  computer  is  waiting  for  a  response  from  you, 
you  may  press  the  'h'  key  or  type  'help'.  THE  WlZ  will  then 
provide  you  with  an  explanation  of  the  function  you  are 
working  with. 


Plotting    capability    This  is  a  feature  unique  to  the  WlZ.  it  can  produce  a  bar 

graph  with  up  to  18  bars  or  a  histogram  with  up  to  100 
points  plotted.  Graphically  presented  data  is  easy  to 
interpret. 


3.  Wordpro  interface 


4.  Read  a  sequential 
file 

5.  Search  for 
keywords 


This  option  is  standard  with  THE  WIZ.  With  many  of  the 
competing  data  managers,  if  available,  it  is  an  extra  cost 
option. 

You  may  reorganize  your  files  or  even  read  sequential  files 
generated  by  other  data  management  systems. 

Here  you  can  search  for  a  word  in  ANY  field  in  your  re- 
cord. It  can  even  ignore  differences  due  to  upper  case  and 
lower  case  characters. 


6.   Constants   in  data     You  may  store  up  to  three  separate  sets  of  contant  fields. 
entry  Each  set  can  have  as  many  fields  as  you  like  filled  with 

information.  Then  two  keystrokes  will  call  the  appropriate 
set. 

And  there  is  more.  There  is  not  room  enough  to  tell  you  all  the  features  in  a  one  page  ad! 

SPECIAL  OFFER 

You  will  like  our  system.  In  fact  we  are  so  convinced  of  this,  that  we  are  going  to  pay  you  to 
try  it!  If  you  have  another  commercially  available  data  management  program,  you  can 
receive  TRADE-IN  credit  for  your  purchase  of  THE  WIZ.  Call  us  on  our  toll  free  number 
(800)  548-3289  for  our  offer  on  your  present  system.  Remember  that  this  offer  expires  March 
15,  1982. 

DR.  DALEY'S  SOFTWARE 

Water  St.  Darby,  MT.  59829 

(oUU)   540-«jZ0£7   (for  Orders  &  Information) 


(406)  821-3924  (Montana  and  technical  assistance) 
Call  between  9  a.m.  and  6  p.m.  Mountain  time  Monday  tli  rough  Fridav 


THE  mflnflCER 

The  first  truly  user-friendly  Database  Management  System  available  at  reasonable  cost. 

This  suite  of  programs  is  ideally  suited  for  both  the  businessman  and  programmer,  for  use  with  the  CBM  8032. 


tHIIIIHtHMIIHHIIIIIMttllMIHHnniHIMIIIDMtHtlDIIHIIIIItllllllll 

TH£  m~iis  mm 

nmiH»IIIIIIIIH>ltllllllttM(ll«l)ttl4M«IMIIItHIMtlMtltllHltM<Hltltt 


BKc*  ft  SiasirE 

VSATE/REVISE 
IISK  DIKCIOAV 


ORWT  ft  CISKETIE 


ptexntATi 


IWIPUlftTE  FILES 
POWKE  M-f  ILES 
IP»r  iENEFftlE 


lEKT  aim 


l-EXIT  10  WSIC- 


ENTER  SaiCTIW  , 


For  the  Business  User 

•  Uses  Menu  Options  -  no  programming 
experience  needed. 

•  Lets  you  enter  data  in  the  form  you  wish, 
then  lets  you  recall  it  using  any  search 
criteria. 

•  Performs  predefined  calculations  on  the 
record  in  realtime  as  record  is  displayed  on 
the  screen. 

•  Reports  can  be  produced  using  any  search 
criteria  and/or  arithmetic  functions. 

•  Useful  applications  can  be  developed 
quickly. 

Typical  Applications  include  - 

•  Inventory  Control 

•  Mailing  Lists 

•  Accounting  systems 

•  Personnel 

•  Costing 

•  Gathering  test  data 

•  Budgeting 

•  Scheduling 

•  Examples  of  use  included  on  disk  supplied. 


As  Programmers  Tool 

•  Uses  standard  PET  ASCII  files. 

•  Software  interface  is  in  Basic  and  available 
to  the  programmer. 

•  No  special  disk  formatting  so  that  word 
processing  or  other  programs  can  be  stored 
on  the  same  disk. 

•  No  ROM  Based  Security  thus  no  need  to 
open  CPU. 

•  Fast  'n'  key  Sort/Merge  included. 

•  Full  realtime  intra  &  inter  record  arithmetic 
performed  on  the  screen  as  record  is 
displayed. 

•  Professional  software  support  including 
unique  security  available. 

TRY  IT! 

IF  YOU  ARE 

NOT  SATISFIED  WITHIN  30  DAYS 

WE  WILL  RETURN  YOUR  MONEY 

$250.00 


OVD 


CANADIAN  MICRO 
DISTRIBUTORS  LTD. 

365  Main  St.,  Milton,  Ontario  L9T1P7 
416  878-7277 


DISTRIBUTORS  OF: 

MUPET  •  DOUBLE-MUPET  •  SPOOLER 

THE  MANAGER  'I/O  PRODUCTS 


Febfuory.  1982.  Issue  21 


COMPUTEI 


145 


Disk 
Disassembler 

George  H.  Watson,  Jr. 
Physics  Dept 
Universily  of  Delaware 
Newark  DE 


Editor  s  Note:  This  program  works  on  either  BASIC  3.0 
or  4.0  and  any  2040  DOS.  It  uses  a  printer.  On  some 
systems,  the  question  "SKIP  BASIC?" should  be  answered 
"NO"  even  though  the  program  under  disassembly  is 
entirely  in  machine  language. 

There  are  several  fine  disassemblers  available  (in 
BASIC  and  in  machine  language)  which  disas- 
semble programs  while  they  reside  in  PET  memory. 
Problems  arise  though  when  the  program  to  be 
disassembled  normally  resides  in  the  same  memory 
space  allocated  to  the  disassembler.  By  relocating 
the  disassembler  (moving  it  to  different  memory 
space)  it  may  still  be  used,  although  with  a  bit  more 
difficulty.  This  problem  may  be  circumvented  by 
using  a  disassembler  which  does  not  require  the 
program  to  be  in  PEl'  memory.  Instead,  the  pro- 
gram can  be  disassembled  directly  from  the  diskette 
on  which  it  is  stored  by  transferring  the  machine 
code  byte-by-byte  (reading  the  program)  and 
translating  into  mnemonics,  but  not  storing  the 
bytes  in  memory. 

A  computer  program  is  a  set  of  instructions 
which  are  stored  in  the  computer's  memory  in  the 
form  of  bytes  (8-bit  words).  A  machine  language 
program  i.s  a  set  of  bytes  which  the  microprocessor 
in  your  computer  understands  direcdy.  On  the 
other  hand,  a  BASIC  program  consists  of  bytes 
which  represent  the  various  BASIC  statements. 
When  you  RUN  a  BASIC  program,  each  byte  is 
interpreted  and  the  microprocessor  acts  according 
to  machine  language  subroutines  which  exist  in  the 
computer's  ROMs.  When  you  LIST  a  BASIC  pro- 
gram, the  operating  system  of  your  computer 
translates  the  bytes  into  BASIC  statements,  which 
are  then  displayed  on  the  screen.  Unfortunately  no 
such  LIST  command  is  available  for  machine 
language  programs  on  the  PET  microcomputer. 
But  something  is  available  which  will  translate 
the  bytes  into  a  form  more  understandable  to  a 
human.  By  allowing  a  disassembler  to  operate  on 
the  machine  code,  the  program  will  be  "LISTED" 
as  6502  microprocessor  mnemonics,  the  heart  of 
every  PET. 


DISK  DISASSEMBLER  opens  a  file  to  be  read 
(the  program  to  be  disassembled)  in  the  disk  drive. 
The  first  two  bytes  which  are  read  will  contain  the 
address  at  which  the  file  is  normally  loaded  into 
PET  memory.  The  remaining  bytes  to  be  read 
comprise  the  program.  All  bytes  will  be  translated 
into  mnemonics  until  an  end-of-file  marker  is 
detected  (through  the  error  word,  ST),  at  which 
point  the  disassembly  is  finished. 

Many  programs  which  you  may  be  interested 
in  disassembling  will  be  a  combination  of  BASIC 
and  machine  code.  DISK  DISASSEMBLER  handles 
the  case  where  the  machine  code  follows  the  BASIC 
program.  Al!  bytes  are  skipped  over  until  three 
consecutive  zeroes  are  detected  which  indicates  the 
end  of  the  BASIC  program.  All  subsequent  bytes 
will  be  disassembled. 

As  much  as  possible,  I  have  attempted  to  make 
the  output  resemble  the  source  code  used  by 
assemblers,  (Source  code  for  an  assembler  consists 
of  the  mnemonics  for  the  microprocessor  which 
the  assembler  converts  into  machine  code.)  One 
major  benefit  of  an  assembler  is  its  ability  to  repre- 
sent addresses  with  labels.  Thus  the  machine  lan- 
guage programmer  is  not  required  to  calculate 
'relative  addresses  needed  for  conditional  branches 
—  a  tedious  chore.  DISK  DISASSEMBLER  does 
not  provide  the  option  of  inputting  labels  (too 
time-constmiing)  but  relative  branches  ARE  con- 
verted to  absolute  branches,  which  makes  under- 
standing the  disassembly  easier. 

DIS  TEST  is  a  compilation  of  all  legal  opcodes 
(instructions)  available  to  the  6502  microprocessor. 
When  disassembled,  an  alphabetical  listing  of  the 
mnemonics  along  with  their  addressing  modes  will 
be  printed  out.  If  there  are  errors  in  the  mnemonics 
or  addressing  modes,  carefully  check  the  DATA 
statements  in  lines  9000-9155.  If  the  relative 
branches  are  wrong,  check  lines  670-675.  Check  all 
lines  containing  the  address  counter,  AD,  if  the 
memory  locations  in  the  first  column  are  incorrect. 

Try  DISK  DISASSEMBLER  on  your  favorite 
game  or  utility.  You  can  learn  mucli  about  machine 
language  programming  by  studying  the  tricks  used 
by  others.  You  may  also  be  able  to  learn  more 
about  the  routines  available  in  the  PET's  ROMs  by 
examining  how  other  programmers  u.se  them. 

One  option  available  in  DISK  DISAS- 
SEMBLER is  the  ability  to  change  a  legal  opcode  to 
an  illegal  opcode.  Why  do  this?  Some  programs 
which  you  may  disassemble  use  a  legal  opcode 
(unused  otherwise)  as  filler  between  subroutines.  I 
suppose  this  is  to  thwart  disassembly  since  a  simple 
NOP  would  also  do  the  job.  You  may  overcome 
this  limitation  by  making  the  opcode  illegal.  How? 
Find  the  mnemonic  in  the  DATA  statement;  make 
sure  you  find  the  one  with  the  correct  addressing 


146 


COMPUTei 


February.  19S2  Issue  21 


mode.  Now  simply  replace  the  number  immediately 
following  the  mnemonic  with  a  zero. 

DISK  DISASSEMBLER  was  written  on  a  32K 
PET  (3.0)  with  2040  disk  drive.  The  program  as 
written  is  slightly  less  than  7K  in  length,  while 
variables,  arrays,  and  strings  require  slightly  less 
than  8K,  so  the  program  will  run  on  a  16K  PET; 
remove  the  REM  statements  if  there  is  a  problem. 
DISK  DISASSEMBLER  will  also  run  on  4.0  PETs 
and  with  the  new  disk  drive  ROMs.  For  readers  not 
inclined  to  type  in  long  programs,  contact  me  at 
the  above  address  and  I  will  provide  tape  copies  at 
$3  each.  (Include  SASE,  mailer,  and  tape.)  Happy 
disassembling! 

$r>eeding  up  BASIC 

Some  notes  on  DISK  DISASSEMBLER: 

1.  Most  frequently-used  subroutines  and  the 
working  part  of  the  program  should  be  placed 
at  the  beginning  of  the  program  (lower  line 
numbers).  When  a  GOSUB  or  GOTO  is  exe- 
cuted, BASIC  begins  at  the  first  line  of  the 
program  and  compares  each  following  line 
number  until  a  match  is  obtained  with  the 
desired  line  number.  Thus  fewer  line  numbers 
need  to  be  scanned  for  subroutines  which  are 
placed  at  the  beginning.  Disadvantage:  a  pro- 
gram may  seem  less  structured. 

2.  Variables  should  be  dimensioned  as  in  lines 
2000-2020  and  the  most-used  variables  should 
be  initialized  first.  Similar  to  I),  when  a  variable 
is  encountered,  BASIC  begins  at  the  first 
variable  in  the  table  of  variables  and  compares 
each  following  variable  with  the  desired  vari- 


able until  a  match  is  made.  Dummy  variables 
(constantly  changing  value  and  heavily  used  in 
subroutines)  are  good  candidates  for  the  first 
positions  in  the  table.  The  variables  should 
then  be  used  as  often  as  permitted. 

3.  When  possible,  use  arrays  of  constants  in 
place  of  conversions  made  with  time-consuming 
subroutines.  The  biggest  timesaving  in  DISK 
DISASSEMBLER  was  made  by  using  an  array 
of  256  hex  characters,  HG$( ),  in  place  of  a 
subroutine  which  converted  the  decimal  value 
of  a  byte  to  the  hex  value.  Disadvantage:  more 
memory  consumed. 

4.  Use  IF  FG  THEN  ...  rather  than  IF  FG<>0 
THEN  ...  and  IF  ST-64  THEN  ...  rather  than 
IF  ST<>64  THEN  ...  The  branch  will  be  made 
if  the  argument  of  the  IF  ..  THEN  ..  is  nonzero. 

5.  Replace  numbers  with  defined  variables.  In 
lines  300  and  400,  B  =  256.  Time  is  saved  since 
the  conversion  of  the  number  256  into  the 
representation  used  by  BASIC  need  not  be 
done  over  and  over;  it  was  done  once  at  initial- 
ization. Disadvantage:  larger  variable  table. 

1  would  also  like  to  mention  two  shorthand 
tricks  which  are  available. 

6.  Since  any  statement  following  a  GOTO  or 
RETURN  on  the  same  line  is  never  executed, 
a  remark  may  be  placed  there  with  no  time 
lost  and  with  no  REM  statement.  See  lines 

10  and  100. 

7.  When  DATA  statements  are  read,  if  all  that 
is  seen  is  another  comma  (no  data),  then  a 
variable  is  read  to  be  zero  and  a  string  is  read 
to  be  null. 


Program  1. 

10   GOTO1000: 

100  IFST-64THENRETURN: 

110  FG=1: RETURN 

200  GET#5,D$:GOSDB100:IFD$=""THEND=0:D$="00"; 

210  D=ASC(D$) :D$=H${D) : RETURN 

300  A%=AD/B:AD$=H$(A%)+H$(AD-A%*B) : RETURN: 

400  A%=D/B:C$=H$(A%)+H$(D-A%*B) :RETURN: 

490  TI$="000000":REM 

500  IFFGTHENRETURN: 

510  GOSUB200:ONB%(D)GOTO540,600,700:REM 

520  REM 

530  D$=D$+"*":M$="":GOTO550: 

540  M$=M${D) tREM 

550  PRINT#4,AD$''   "D$"       ",M$ 

560  AD=AD+1:GOSUB300:GOTO500 

590  REM 

600  B1=D:B1$=D$:M$=M$(D)+"  " :GOSUB200 :REM 

605  ONA%(B1)GOTO610, 620, 630, 640, 650, 66 0,670: 

610  M$=M$+"#  $"+D$:GOTO680: 

620  M$=M$+"*  $"+D$:GOTO680: 

630  M$=M$+"($"+D$+",X) ":GOTO680: 


*******   COMMENTS   ******* 
♦CHECK  FOR  END-OF-FILE* 

RETURN :*BYTE  GET  &  CONVERSION* 

♦ADDRESS  CONVERSION* 
♦DECIMAL  ->  4-DIGIT  HEX* 
♦BEGIN  DISASSEMBLY* 
CHECK  END-OF-FILE  FLAG 
GET  1ST  BYTE  &  BRANCH 
♦1-BYTE  INSTRUCTION* 
-ILLEGAL  OPCODE 
-ACCUMULATOR, IMPLIED 


♦2-ByTE  INSTRUCTION* 
GET  2ND  BYTE 
ADDRESSING  MODE 
-IMMEDIATE 
-ZERO  PAGE 
-INDEXED  INDIRECT 


JUST  PLUG  IT  IN 

•  No  soldering  •  No  messy  wires 

SOFTWARE 
SELECTABLE 

1 .  Software  select  one  of  two 
operating  systems. 
(BASIC  2.0 /BASIC  4.0) 

2.  Software  select  utility  ROMs 
at  conflicting  addresses, 


M50 


00 


Master  Charge  and 
13B9K,'      VISA  accepted. 


BfiTTERlES 
inCLUDED 


▲  ▲ 


^cammodore 


aom  Series 


Village  by  the  Grange 
71  McCaul  Street 
Toronto,  Ontario 
Canada  M5T  2X1 
(416)596-1405 


For  24  Pin  ROM  Machines  Only. 


PIE-C 


PET/CBM  *  IEEE-488 
TO  PARALLEL  PRINTERS 
By  LemData  Products      i 


P.I.E.-C  MEANS — Professional  design,  Indispensible  features,  Excellent  quality  and  Cost  effectiveness.  You 
can't  buy  a  better  parallel  interface  for  your  PET/CBM. 

Our  P.I.E.-C  will  interface  your  PET/CBM  through  the  lEEE-488  bus  to 


the  MEC  Spinwriter,  the  C.  Itoh  Starwriter,  printers  by  Centronics,  Epson,  Anadex,  Escon  Products,  the 
Paper  Tigers  by  IDS,  the  MIPLOT  by  Watanabe,  the  DIP  printers,  the  AJ-841,  the  OKIDATA  printers,  plus 
ALL  OTHER  parallel  ASCII  printers. 

Assembled  with  custonn  case,  CBM-TO-ASCII  code  converter  and  appropriate  cable,  the  P.I.E.-C  is  only 
$129.95  (  +  $5  S&H).  Md.  Res.  +5%  tax.  Specify  printer  and  CBM  models. 


LemData  Products,  P.O.  Box  1080,  Columbia,  Md.  21044  Phone  (301)  730-3257 

*PET/CBM  are  trademarks  of  Commodore  Business  Machines  (Dealer  Inquiries  Invited) 


14B 


COMPUTEI 


February,  1982.  Issue  21 


",M$ 


640  M$=M$+"($"+D$+") ,Y":GOTO680 

650  M$=M$+"*  $"+D$+'',X":GOTO680 

660  M$=M$+"*  $"+D$+'',Y'':GOTO680 

670  IFD<128THEND=AD+D+2:GOT0675 

672  D=AD+D-254 

675  GOSUB400:M$=M$+''TO  $"+C$ 

680  PRINT#4,AD$"   "Bl$"  "D$" 

690  AD=AD+2:GOSUB300:GOTO500 

695  REM 

700  B1=D:B1$=D$:GOSUB200:B2$=D$:GOSUB200:REM 

710  M$=M$(B1)+''  $''+D$+B2$ 

720  ONA%(B1)GOTO760,730,740,750: 

730  M$=M$4-",X":GOTO760: 

740  M$=M$+",Y":GOTO760: 

750  M$=LEFT$(M$,4)+"($''+D$+B2$  +  ")  ":REM 

760  PRINT#4,AD$''   "Bl?"  "B2$"  "D$,M$:REM 

770  AD=AD+3:GOSUB300:GOTO500 

780  : 

1000  GOSDB2000:REM  INITIALIZE 

1100  GOSUB210  0:REM  SELECT  PRINTER 

1200  GOSUB2200:REM  SELECT  FILE 

1300  GOSUB2300:REM  OPEN  FILE 

1350  IFFETHEN1200:  DISK  ERROR 

1400  GOSUB2400:REM  GET  LOAD  ADDRESS 

1500  GOSUB2500:REM  SKIP  BASIC 

1600  GOSUB490:  REM  DISASSEMBLE  FILE 

1700  GOSUB2600:REM  STOP? 

1800  GOTO1100:  REM  REPEAT 

1900  : 

2000  DIMD,D$,AD,A%,B,B1,FG,C$,J:B=256:REM 

2010  DIMAD$,M$,B1$,B2$,DR$,FLS,FY,FP 

2020  DIMDV,FD,DA$,FE,EN,EN$,EM$,ES$,ET$ 

2030  DIMD${15) ,H$(255) ,M$(255) ,B%(255) ,A%(255) ,C${ 

2040  FORJ=0TO15:READD${J} :NEXT:REM 

2050  FORJ=0TO13:READC$(J) :NEXT 

2060  PRINT''flx.»»"C$(0)C$(10)  :PRINT"^"C$(11)  :PRINT"i^ 

2070  FORJ=0TO15:FORD=0TO15:H${J*16+D)=D$(J)+D${D) : 

2080  FORJ=0TO255:READM$(J) ,B%(J) ,A%(J) :NEXT;RETDRN 

2090  : 

2100  IFFPTHENRETURN: 

2110  D=l :GOSUB6000 :DV=A% : IFDV<3ORDV>30THEN2110 

2120  FP=1 : CL0SE4 : 0PEN4 , DV: IFDV-3THENPRINT#4 

2130  IFFDTHENRETURN: 

2140  D=2:GOSUB6000:DA$=D$:PD=1:RETURN 

2150  : 

2200  D=3:GOSUB60  00:DR$=D$:IFA%ANDA%-1THEN2200:REM 

2210  D=4:GOSUB6000:FL$=D$:IFDV=4ORDV=3THENPRINT#4, 

2220  PRINT#4,FLS, ,DA$:PRINT#4:PRINT#4:RETURN 

2230  : 

2300  CL0SE15: CLOSES: REM 

2310  0PEN15,8,15, "I"+DR$:GOSUB7000:IFFETHENRETURN: 

2320  OPEN5,8,5,DR$+": "+FL$+",P,R":GOSUB7000:REM 

2330  RETURN 

2340  : 

2400  GOSUB200:AD=D:AD$=D$:REM 

2410  GOSUB200:AD=AD+D*B:AD$=D$+AD$: RETURN 

2420  : 

2500  PRINT"R" :D=5 :GOSUB6000 : IFFY=0THEN2570 : 

2510  IFFY-1THEN2500 

2520  PRINTC$(0)C$(6) :J=0:REM 

2530  GET#5 , D$ : IFD$THENJ=J+1 :GOTO2530 


-INDIRECT  INDEXED 
-ZERO  PAGE  INDEXED  BY  X 
-ZERO  PAGE  INDEXED  BY  Y 
-RELATIVE  ->  ABSOLUTE 


*3-ByTE  INSTRUCTION* 
GET  2ND  &  3RD  BYTES 

ADDRESSING  MODE 
-ABSOLUTE  INDEXED  BY  X 
-ABSOLUTE  INDEXED  BY  Y 
-INDIRECT 
-ABSOLUTE 


*BEGIN  EXECUTION* 


♦INITIALIZATION* 


13) 

FILL  ARRAYS 

"C$(12) 
NEXT: NEXT 


*OPEN  PRINTER* 


ENTER  DATE 


♦SELECT  FILE* 


♦INITIALIZE  DISK  DRIVE* 
OPEN  COMMAND  CHANNEL 
OPEN  FILE  FOR  READ 


*GET  LOAD  ADDRESS* 

*SKIP  BASIC* 
CHECK  FOR  3  ZEROES 


A 

Wooden 

Computer? 


Not  from  Commodore! 

So  why  should  the  desk  look  like  wood?  A  pleasant 
cream  and  charcoal  trimmed  desk  looks  so  much  better 
with  Commodore  systems.  One  look  and  you'll  see. 
Interlink  desks  are  right.  By  design. 

The  specifications  only  confirm  tfie  obvious: 


•Cream  and  charcoal 
color  beautifully  matches 
the  Commodore  hardware 
and  blends  with  your 
decor. 

•An  ideal  710  mm  (28") 
keyboard  height  yet  no 
bumping  knees  because  a 
clever  cutout  recesses  the 
computer  into  the  desk- 
top. 

•  High  pressure  laminate 
on  both  sides  of  a  solid 
core  for  lasting  beauty 
and  strength. 

•  Electrostatically  applied 
baked  enamel  finish  on 
welded  steel  legs— no 
cheap  lacquer  job  here. 


•T-molding  and  rounded 
corners  make  a  handsome 
finish  on  a  durable  edge 
that  won't  chip. 

•  Knocked  down  for  safe, 
inexpensive  shipment. 

•  Patented  slip  joints  for 
quick  easy  assembly. 

•  Leveling  glides  for 
uneven  floors. 

•Room  enough  for  a 
Commodore  printer  on  the 
desk,  yet  fits  into  nearly 
any  den  or  office  niche— 
H:  660  mm  (26")  W:  1170 
mm  (46")  D:  660  mm  (26"). 
•Matching  printer  stand 
available  with  slot  for 
bottom  feeding. 


Price:  $299 

In  short,  as  Commodore  dealers,  we  won't  settle  for 
anything  that  looks  good  only  in  the  catalog!  Our 
customers  won't  let  us.  They  don't  buy  pictures.  And 
neither  should  you.  This  is  why  we  will  let  you  use  one  of 
our  desks  for  a  week  and  then  decide.  If  for  any  reason 
you  don't  like  it,  just  return  it  in  good  condition  for  a 
cheerful  refund. 


If  your  Commodore  dealer  doesn't  carry  our  desks  yet, 
send  a  check  for  $299  and  we  will  ship  your  desk  freight 
paid! 

Name . 

Address 

City SI Zip 


interlink,  Inc.,  Box  134,  Berrien  Springs,  Ml  49103 
Master  Charge  and  Visa  welcome.  Call  our  order  line: 
616-473-3103 


Every  PET 
Needs  a  Friend. 


CURSOR  is  the  best  friend  your  Commodore  PET  will  ever 
have.  Since  July,  1978  we  have  published  150  of  the  most 
user-friendly  programs  for  !he  PET  available  anywhere. 
When  we  write  or  edit  a  program,  we  spend  lots  of  time 
fussing  about  how  it  will  treat  you.  We  pay  attention  to  lots 
of  little  things  that  help  niake  using  a  computer  a  pleasure 
instead  of  a  pain. 

Naturally,  CURSOR  programs  are  technically  excellent. 
Each  program  thai  we  purchase  is  extensively  edited  or  re- 
written by  a  professional  programmer.  But /maginafion  is 
just  as  important  as  being  user-friendly  and  technically 
good!  We  delight  in  bringing  you  off-beal,  unusual 
programs  that  "show  off"  the  abilities  of  your  PET  or  CBM. 
CURSOR  is  user-friendly,  technically  great  and  full  of 
imaginative  programs.  And  every  issue  of  CURSOR  is  still 
available!  We  continue  to  upgrade  previously  published 
programs  so  that  they'll  work  on  the  three  varieties  of 
Commodore  ROM's  (Old,  New,  and  4.0|.  New  issues  also 
work  on  the  80  column  CBM. 

For  only  $4.95  you  can  buy  a  sample  issue  and  judge  for 
yourself.  Or  send  $18  for  a  four-issue  subscription.  Each 
CURSOR  comes  to  you  as  a  C-30  cassette  with  five  pro- 
grams and  a  graphic  Front  Cover,  ready  to  LOAD  and 
RUN  on  your  PET. 

Who  knows?  After  your  PET  meets  CURSOR,  things  may 
never  be  the  same! 


AUTHORIZED  DISTRIBUTORS; 


CreAt  Britain 
AUDIOGENIC,  Ltd. 

P.O.  Boi  Ba 

Reading.  Berkshrre 
HolUnd 
COPYTRONICS 
Bergemeesler 


SrSTIMS  FORMULATI  CORP. 

Shrn-MakirhoDldf;,  1-8.17 
Vaesii,  Chiio-kii.  Tokyo  103 
Aufl(jl»iA 
MICROCOMPUTER 
HOUSE,  LTD. 


Van  Suchtelenslraal  46    133  Regent  Street 


7413  XP  Devenler 


Chippendale.  Sydncv 
N.S.W.  Australia  2008 


theCODE 
WORKS 

Box  550 

Goleta,  CA  93116 
805-683-1585 


150 


COMPUTil 


FebRjarv.  1982.  Issue  21 


2540 

2550 

2560 

2570 

2580 

2600 

2610 

2620 

2630 

2640 

2650 

2660 

6000 

6010 

6020 

6030 

6040 

6B60 

imi6 

7010 

7020 

7030 

7040 

8000 

8500 

8510 

8520 

8530 

8540 

9000 

9005 

9010 

9015 

9020 

9025 

9030 

9035 

9040 

9045 

9050 

9055 

9060 

9065 

9070 

9075 

9080 

9085 

9090 

9095 

9100 

9105 

9110 

9115 

9120 

9125 

9130 

9135 

9140 

9145 

9150 


GET#5 ,D$ : IFD$THENJ=J+2 :GOTO2530 
GET#5 ,D$ : IFD$THENJ=J+3 :GOTO2530 
AD=AD+J+3 :GOSUB300 :REM 
PRINT"fi"C$(0)C$(7) "^t":RETURN 

« 

PG=0 : CL0SE5 : CL0SE15 : PRINTC$ ( 0 ) INT (Tl/6 ) /10 "SEC 

D=8:GOSDB6000:IFFY=0THENCLOSE4:END:REM 

IFFY-1THEN2610 

D=9:GOSnB6000:IFFY=0THENRETURN:REM 

IPFY-1THEN2630 

FP=0: RETURN 

Fy=2  :  PRINTC$  { 0 )  C$  (D)  "«<  " ;  :  REM 

INPUTD$:IFD$="-"THEN6000 

A%=VAL(D$) :C$=LEFT$(D$,1) : IFC$="N"THENFY=0 

IFC$="Y"THENFY=1 

RETURN 

FE=0:REM 

INPUT#15 , EN$ , EM$, ET$ , ES? : IFEN$="00 "THENRETURN 

PRINTC$(0)''iL"C$(13) 

PRINTC$(0)EN$",  "EM$",  "ES$" , "ET$;FE=1 :RETURN 


FIX  ADDRESS 

*D0  ANOTHER  FILE?* 
CHANGE  PRINTER? 

♦INPUT  ROUTINE* 


♦CHECK  FOR  DISK  ERROR* 


DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 


1,R0L,3,1,,, 


0,l,2,3,4,5,6,7,8,9,A,B,C,D,E,F,"Hi'>»»5>-»>" 

PRINTER  DEVICE  #   3, DATE  (MO/DA/YR)   -, DRIVE  #   0, FILENAME   - 

SKIP  BASIC  PROGRAM   N, SKIPPING  BASIC  , DISASSEMBLING  .... 

DISASSEMBLE  ANOTHER  FILE   N, DIFFERENT  PRINTER   N,DISK  DISASSEMBLER 
-BASIC  DISASSEMBLER  FOR  PET  DISK  PILES- 
OUTPUT  RESEMBLES  ASSEMBLER  SOURCE  CODE., DISK  ERROR 
BRK,l,,ORA,2,3,,,,,,,,,,ORA,2,2,ASL,2,2,,, 

^iirrrrit ORA ,3^1, ASL ,3,1,,, 

,,,,ORA,2,5,ASL,2,5,,, 
,, , ORA, 3, 2, ASL, 3, 2, 
, BIT, 2, 2, AND, 2, 2, ROL, 2, 2,,, 
1,,,,, BIT, 3,1, AND, 3, 
,,,,AND,2,5,ROL,2,5 
, ,,AND,3,2,ROL,3,2, 
, , , EOR ,2,2, LSR , z , z , 
l,,,,,JMP,3,l,EOR,3 
, , , , EOR , 2, 5, LSR, i, 5 
,,, EOR, 3, 2, LSR, 3, 2, 
, ,  , ADC ,2,2, ROR ,2,2, 
1,,,,,JMP,3,4,ADC,3, 
,, , , ADC, 2, 5, ROR, 2, 5, 
,,, ADC, 3, 2, ROR, 3, 2,. 
2,2,STA,2,2,STX,2,2, 
, , STY , 3 , 1 , STA , 3 , 1 , STX , 3 , 1 , , , 
, STY ,2,5, STA ,2,5, STX ,2,6,,, 
t  I  r  r  f  I  I STA ,3, 2, ,4,, 


PHP,1 
BPL,2 
CLC,1 
JSR,3 
PLP,1 
BMI,2 
SEC,1 
RTI,1 
PHA,1 
BVC,2 
CLI,1 
RTS,1 
PLA,1 
BVS,2 
SEI,1 


DEY,1 
BCC,2 
TYA,1 
LDY,2 
TAY,1 
BCS,2 
CLV,1 
CPY,2 
INY,1 
BNE,2 
CLD,1 
CPX,2 
INX,1 
BEQ,2 


, ORA, 2,1, ASL  A 
7,ORA,2,4,,,,, 
, ORA, 3, 3,,, 
1, AND, 2, 3,, 
,AND,2,1,R0L  A 
7, AND, 2, 4,, 
,AND,3,3,,, 
, EOR, 2, 3,,, 
, EOR, 2,1, LSR  A 
7, EOR, 2, 4,, 
, EOR ,3,3,,, 
,ADC,2,3,,, 
, ADC, 2,1, ROR  A 
7, ADC, 2, 4,, 
, ADC ,3,3,,, 


, , , STA ,2,3,,,,,,, STY 


t  r  t  t TXA, 1 , , 
7, STA, 2, 4,, 


r  f 
r  r 


, LDY ,2,5,LDA,2,5, LDX ,2,6,,, 


, ,,,LDY,3,2,LDA,3,2 


,STA,3,3,TXS,1 

1 , LDA, 2 , 3 , LDX ,2,1,,,, LDY ,2,2, LDA, 2 

,LDA,2,1,TAX,1,,,,,LDY,3,1,LDA,3,1 

7, LDA, 2, 4, , , , , 

,LDA,3,3,TSX,1 

1,CMP,2,3,,,,, 

,CMP,2,1,DEX,1 

7 , CMP , 2 , 4  ,  , ,  ,  , 

, CMP, 3, 3,,,,,, 

1 , SBC  fZfiifiir 

, SBC, 2,1, NOP, 1 
7,SBC,2,4,,,,, 


,CPY, 2, 2, CMP, 2, 2, DEC, 2, 2,,, 


t 


,,,,CPY,3,1,CMP,3,1 

,,,,CMP,2,5,DEC,2,5 

,,, CMP, 3, 2, DEC, 3, 2, 

,CPX, 2, 2, SBC, 2, 2, INC, 2, 2,,, 

,,,,CPX,3,1,SBC,3,1 

,,,,SBC,2,5,INC,2,5 


1 , LSR, 3,1,,, 


1, ROR, 3,1,,, 

I  r 
f 
t  I 


2,LDX,2,2,,, 
LDX, 3,1,,, 


LDX, 3, 3,,, 


DEC,3,1,,, 


INC, 3,1,,, 
r  t 


The  SM-KIT  is  a  colleclion  of  machine  language  firmware  programming  and  test  aids  for 
BASIC  programmers.  SM-KIT  Is  a  4K  ROM  (twice  ttte  normal  capacity)  which  you 
simply  Insert  In  a  single  ROfi^  socket  on  any  BASIC  4  CBM/PET-elttier  80  column  or  40 
column.  Includes  tjoth  programming  aids  and  disk  handling  commands. 

ERROR  DETECTION:  the  SM-KIT  automatically  indicates  the  erraneous  line  and 

statement  for  any  BASIC  program  error. 

LINE  NUfi^BERlNG:  the  SfJi-KIT  automatically  numbers  BASfC  statements  until  you 

turn  the  function  off. 

SCREEN  OUTPUT;  the  commands  FIND.  DUMP,  TRACE  and  DIRECTORY  display  on 

the  CRT  wfiile  you  hold  the  RETURN  key  (display  pauses  when  the  key  Is  released). 

Continuous  output  is  selected  with  shift-lock 

OUTPUT  CONTROL  to  DISK  or  PRINTER:  In  addition  to  displaying  on  the  CRT.  you  can 

direct  output  to  either  disk  or  printer. 

HAROCOPY-  allows  screen  displays  to  be  either  printed  or  stored  od  disk. 

FIND:  searches  all  or  any  part  of  a  program  lor  text  or  command  stnngs  or  variable 

names.  Either  exact  search  or  wild  card  search  supported. 

RENUMBER:  the  SM-KIT  can  renumtier  all  or  any  part  of  a  program.  The  selective 

renumbering  allows  you  to  move  blocks  of  code  within  your  program. 

VARIABLE  DUMP'  displays  the  contents  of  floating  poim.  integer,  and  string  variables 

(both  simple  and  array).  Can  display  all  variables  or  any  selected  variables. 

TRACE:  SM-KIT  can  trace  program  execution  either  continuously  or  step  by  step 

starting  with  any  line  number  Selected  program  variables  can  be  displayed  while 

tracing, 

DISK  COMMANDS:  as  in  DOS  Support  (Universal  Wedge),  the  "shorthand"  versions  of 

disk  commands  may  be  used  for  displaying  disk  directory,  initializing,  copying, 

scratching  files,  load  and  run.  etc. 

LOAD:  SM-KIT  can  load  all  or  part  of  BASIC  or  machine  language  programs.  It  can 

append  to  a  program  in  memory,  overwrite  any  part  of  a  program,  load  starting  with  any 

absolute  memory  location,  and  load  without  changing  variable  pointers. 

MERGE,  allows  merging  all  or  any  part  of  a  program  on  disk  with  a  program  in  memory. 

SAVE  and  VERIFY:  SM-KIT  provides  one  Step  program  save  and  verification.  It  also 

allows  you  to  save  any  part  of  a  pfogram,  or  any  address  range. 


SM-KIT 

for  Commodore  Computers 


A  Programming  Productivity  Tool 


ONLY 
$40 


A  4K  ROM  with  both 
programming  and  disk 
handling  aids. 


Developed  by  (and  available  In  Europe  from)  SM  Sottwareverbund-Microcomputer  GmbH,  Scherbaumslrasse  29,  8000  Munchen  83,  Germany 


252  Bethlehem  Pike 
Colmar,  PA  18915 


215-822-7727 


A  B  Computers 


WRITE  FOR  CATALOG. 

AdflSI  25  per ordei  l0(  shrpping  WepayDsianceolUPSwrlacecftarges 
on  an  piepaiO  wfleis  Prices  iistcO  are  on  caSn  Oiscouni  tiasis  Regular 
piires  shgtiMv  nighef 


QUALITY  ACCOUNTING  SOFTWARE 
for  the  CBM  COMPUTER 


THE  GENERAL  LEDGER  SYSTEM      S 1 50.00 

All  entries  are  made  via  formatted,  fill  in  the  blanks, 
screens.  There  is  a  separate  check  stub  format  disburse- 
ments entiy  screen  and  eight  digit  account  numbers  to 
allow  sub  coding  as  required.  Up  to  fifty  user  designated 
journals  are  available.  All  data  is  verified  on  input  with 
balance  enforced.  All  journals  are  available  for  print  at 
any  point  in  the  accounting  cycle.  Any  printout  may  be 
printed  by  department.  The  general  ledger  prints: 
balance  forward,  full  detail  of  each  transaction,  total 
credits,  total  debits,  and  end  balance  for  each  account. 
Available  reports  include:journals,  disbursements 
regjster,  current  trial  balance,  audit  trial  balance,  budget 
trial  balance,  income  statement,  balance  sheet,  cash 
flow  analysis,  and  comparison  of  budget  vs.  actual 
amounts  for  year  to  date,  or  the  current  period. 

FUND  ACCOUNTING  SYSTEM  $200.00 

The  perfect  accounting  system  for  the  municipal  utility 
district,  and  the  small  city  or  school  district.  The  system 
includes  all  features  of  the  general  ledger  system  with 
the  added  ability  of  printing  all  reports,  and  the  general 


ledger,  by  fund  as  well  as  by  department. 

CLIENT  ACCOUNTING  SYSTEM         $200.00 

The  accounting  tool  kit  for  the  public  accountant.  This 
system  includes  all  features  of  the  general  ledger  system 
with  the  addition  of  a  payroll  check  stub  formatted 
screen  for  payroll  check  input.  Also  included  are:  a 
payroll  disbursement  register,  a  1099  register,  941 
reports,  and  W-2's. 

INTERLOCKING  MODULES 

The  following  modules  are  available  forany  of  the 
general  ledger  based  systems: 

Accounts  Payable  S  75.00 

Accounts  Receivable  S  75.00 

Payroll  S  75.00 

Job  Cost  Payroll  SI  00.00 

Utility  Billing  System  SI  00.00 

Accounting  software  may  be  reviewed  at  your  dealer,  or 
via  mail.  Full  caia\og,  demo  disc,  sample  operations  man- 
ual, (please  specify  which  system),  and  a  S20.  credit  cou- 
pon —  only  S20.00 

DEALERSI  Please  Write  for  Dealers  Pack 


Expanded  Software  Catalog  Free  on  Request 

BASIC  SOFTWARE  SERVICE 

P.O.  BOX  181,  LA  PORTE,  TX.,  77571 
Phone  Area  Code  7 1 3/  470- 1 857 


152 


COMPUTEI 


Februarv.  W82,  Issue  21 


********************* 

*  * 

*  DISK  DISASSEMBLER  * 

*  * 

*  G.H.WATSON    3/81  * 

*  * 

********************* 


9155  DATA  SED,1, , SBC,3, 3, , , , , , , 
10000 
10010 
10020 
10030 
10040 
10050 
10060 
11000 

11010  J,D 

11020  A% 

11030  D$,C$ 

11040  FG 

11050  Bl 

11050  AD,AD$ 

11070  M$ 

11080  B1?,B2$ 

11090  DR$,FL$ 

11100  DA$ 

11110  D$() 

11120  H$() 

11130  M${) 

11140  B%() 

11150  A%() 

11160  C$() 

11170  EN,EN$ 

11180  EM$ 

11190  ET$,ES$ 

11200  FE 

11210  FP,FD 

11220  FY 

11230  DV 

11240  B 
READY . 


,,,SBC,3,2,INC,3,2,, 


VARIABLE  TABLE  

DUMMY  INDEX/VARIABLE 

DUMMY  INTEGER 

DUMMY  STRINGS 

END-OF-FILE  FLAG 

OPCODE  (DEC) 

ADDRESS  (DEC, HEX) 

INSTRUCTION 

1ST  &  2ND  BYTES  OF  CODE 

DRIVE  #, FILENAME 

DATE 

HEX  NUMERALS 

HEX  FOR  BYTES 

6502  MNEMONICS 

#  BYTES  IN  INSTRUCTION 

ADDRESSING  MODE 

PRINT  STRINGS 
# 

MESSAGE 
TRACK/ SECTOR 
ERROR  FLAG 


ERROR 
ERROR 
ERROR 
DISK 


PRINTER/DATE  FLAG 
FLAG  FOR  YES/NO 
PRINTER  DEVICE  # 
CONSTANT  =256 


Program  2. 

5000  69  00  6D  00  00  65  00  61 
5008  00  71  00  75  00  7D  00  00 
5010  79  00  00  29  00  2D  00  00 
5018  25  00  21  00  31  00  35  00 
5020  3D  00  00  39  00  00  0E  00 
5028  00  06  00  0A  16  00  IE  00 
5030  00  90  00  B0  01  F0  7F  2C 
5038  00  00  24  00  30  80  D0  FE 
5040  10  FF  00  50  00  70  00  18 
5048  D8  58  B8  C9  00  CD  00  00 
5050  C5  00  01  00  Dl  00  D5  00 
5058  DD  00  00  D9  00  00  E0  00 
5060  EC  00  00  E4  00  C0  00  CC 
5068  00  00  C4  00  CE  00  00  06 
5070  00  D6  00  DE  00  00  CA  88 
5078  49  00  4D  00  00  45  00  41 
5080  00  51  00  55  00  5D  00  00 
5088  59  00  00  EE  00  00  E6  00 
5090  F6  00  FE  00  00  E8  C8  4C 
5098  00  00  60  00  00  20  00  00 
50A0  A9  00  AD  00  00  A5  00  Al 
50A8  00  Bl  00  B5  00  BD  00  00 


50B0  69  00  00  A2  00  AE  00  00 
50B8  A6  00  BE  00  00  B6  00  A0 
50C0  00  AC  00  00  A4  00  B4  00 
50C8  BC  00  00  4E  00  00  46  00 
50D0  4A  56  00  5E  00  00  EA  09 
50D8  00  0D  00  00  05  00  01  00 
50E0  11  00  15  00  ID  00  00  19 
50E8  00  00  48  08  68  28  2E  00 
50F0  00  26  00  2A  36  00  3E  00 
50F8  00  6E  00  00  66  00  6A  76 
5100  00  7E  00  00  40  60  E9  00 
510  8  ED  00  00  E5  00  El  00  Fl 
5110  00  F5  00  FD  00  00  F9  00 
5118  00  38  F8  78  8D  00  00  85 
5120  00  81  00  91  00  95  00  9D 
5128  00  00  99  00  00  8E  00  00 
5130  86  00  96  00  8C  00  00  84 
5138  00  94  00  AA  A8  BA  8A  9A 
5140  98AAAAAAAAAAAAAA 


S    "DIS  TEST", 08, 5000, 5141 


@ 


om 


K 


Standard  Features: 

•  Full  power  to  PET/CBM  for  a  minimum  of 
15  minutes 

•  Installs  within  PET/CBM  cabinet 

•  No  wiring  changes  necessary 

•  Batteries  recharged  from  PET/CBM  inte- 
gral power  supply 


Specifications: 

•  Physical  Size:    5.5"  x  3  6"  x  2  4" 

•  Weight:    4.5  lbs 

•  Time  to  reach  foil  charge:    16  hours 

•  Duration  of  outputs:   Minimum  of  15  min. 

•  Voltages:    +16,  +9,  -12,  -9 

•  Battery  Life  Expectancy:    3  to  5  years 

•  Battery  On-Off  Switch 


For  Use  With: 

•  Commodore  PET/CBM  2001  and  4000  ser- 
ies computer 

•  Commodore  PET/CBM  8000  series  com- 
puter (screen  size  will  not  be  normal  on 
battery  back-up) 

•  Commodore  C2N  Cassette  Drive 


BATTERY 

BACKUP 

SYSTEIVL 


FOR  COMMODORE  PET/CBM  COMPUTERS 


Never  again  lose  valuable  data  because  of 
power  shortages  or  line  surges.  BackPack  sup- 
plies a  minimum  of  15  minutes  reserve  power  to 
32K  of  memory,  the  video  screen  and  tape 
drive.  Backpack  fits  inside  the  PET/CBM 
cabinet  and  can  be  installed  easily  by  even  the 
novice  user.  BackPack  is  recharged  during  nor- 
mal operation  and  has  an  integral  on-off  switch, 

BackPack  comes  fully  assembled  and  tested. 
Instructions  included. 

Also  available,  Back  Pack  unit  for  Commodore 
CBM  4040  and  8052  Dual  Drive  Floppy  Dislc. 


Dealer  and  distributor  inquiries  invited. 


BackPack  is  a  trademark  of  ETC  Corporation 
CBM/PET  are  trademarks  of  Commodore  Business  Machines 


Designed  and  manufactured  by: 

ELECTRONIC  TECHNOLOGY  CORPORATION 

P.O.  Box  G,  Old  N.C.  42 

Apex,  North  Carolina  27502 

Phone:  (919)362-4200  or  (919)362-5671 


Electronic  Manufacturing 

Technical  Design  and  Development 

Compute'-  System  Technology 


ELECTRONrC  TECHNOLOGY  CORPORATION 


154 


COMPUTEi 


February.  1982.  Issue  21 


Line  Input  For 
The  PET 


Robert  Lando 
Toronto,  Canada 


Unfortunately,  as  many  users  will  agree,  the 
INPUT  command  on  the  Commodore  Pet  contains 
several  undesirable  features.  First  of  all,  if  the 
RETURN  key  is  pressed  before  any  data  is  entered, 
the  program  will  abruptly  end  and  the  user  will  be 
left  with  a  READY,  message.  Although  there  are 
several  "tricks"  that  the  programmer  can  use  to 
prevent  this  from  happening,  they  do  not  alleviate 
another  major  problem. 

No  matter  how  an  INPUT  is  programmed, 
when  it  is  encountered  the  computer  waits  for  a 
key  to  be  typed,  echoes  it  back  to  the  screen,  and 
waits  for  another  until  the  RETURN  key  is  pressed. 
The  problem  is  that  if  the  user  enters  a  cursor 


movement  key,  its  function  will  be  echoed  back  to 
the  screen.  The  user  could,  for  example,  clear  the 
screen,  and  have  no  way  of  recovering  the  lost 
information. 

Some  computers  offer  a  command  that  will 
accept  one  line  of  input  from  the  user.  The  only 
acceptable  keys  are  un-shifted  letters  from  A-Z, 
digits  from  0-9,  the  space  bar,  the  delete  key,  and 
the  return  key.  All  other  keys  are  ignored.  Pressing 
RETURN,  DELete,  or  SPACE  before  something 
else  is  typed  will  have  no  effect,  and  trailing  spaces 
are  ignored.  This  command,  usually  called  INLINE 
(INput  LINE),  or  LINPUT  (Line  INPUT),  can  be 
used  in  place  of  INPUT. 

Below  is  a  program  written  in  machine  lan- 
guage, that  when  called  with  a  SYS  command  to  its 
starting  location,  will  do  a  LINPUT  on  the  Com- 
modore Pet  with  "upgrade"  ROMs.  Whatever  the 
user  types  will  be  returned  in  the  basic  variable 
IN$.  The  program  is  completely  relocatable,  and 
occupies  305  bytes.  The  program  is  presented  in 
assembler,  and  as  a  Basic  loader.  You  may  locate 
the  program  anywhere  in  memory,  or  have  the 
loader  program  POKE  it  into  tlie  end  of  memory, 
and  adjust  the  necessary  pointers  to  protect  it  from 
being  erased  by  string  storage. 


Program 

L 

0010 
0020 

.OS 
.Efl 

•f027fl 

0030 

LEN 

.DE 

fEl 

0040 

EUL 

.DE 

$B3 

0050 

CUR 

.DE 

167 

0060 

Mfl;«; 

.HE 

37 

0070 

EOS 

.HE 

$30 

0080 

OCOLL 

.HE 

fD400 

0090 

CHRREC 

.HE 

*E5 

0100 

TESTE I R 

.DE 

53888 

0110 

VHR 

.DE 

|:2R 

0120 

SEARCH 

.DE 

$B7 

0130 

EHUV 

.DE 

$2C 

0140 

ENDS 

.DE 

$B9 

0150 

SLEN 

.DE 

*EE 

0160 

SNflME 

.DE 

$42 

0170 

flDDSTR 

.DE 

$D001 

027FI- 

20 

80  112 

0180 

JSR 

TESTDIR 

027D- 

fl9 

02 

0190 

LDR 

#$2 

027F- 

85 

E4 

0200 

STfl 

*BUL+1 

0281- 

Fi9 

00 

0210 

LDR 

#00 

0283- 

85 

B3 

0220 

STR 

*EUL 

0285- 

flS 

sn 

0230 

LDR 

#141 

0287- 

20 

ri2  FF 

0240 

JSR 

$FFD2 

028fi- 

fl9 

3E 

0250 

LDR 

#62 

02SC- 

20 

112  FF 

0260 

JSR 

$FFD2 

028F- 

f\S 

00 

0270 

LDR 

#0 

0231- 

85 

Bl 

0280 

STfl 

*LEN 

; LENGTH  OF  STRING 
; POINTER  TO  BUFFER 
CURSOR  STATUS 
■  my,   #  OF  CHAR 
; BOTTOM  OF  STRINGS  PTR 
GARBflGE  COLLECT 
LAST  KEV  RECEIVED 
TEST  DIRECT  MODE 
START  OF  VARIABLES  PTR 
: START  OF  SEARCH  PTR 
END  OF  VARIABLES  PTR 
END  OF  SEARCH  PTR 
FINAL  STRING  LENGTH 
VARIABLE  NAME 
ADD  A  VARIABLE 
EXIT  IF  DIRECT  MODE 
BUFFER  POINTER  =  $0260 


jDO  CRLF 

.; PRINT  PROMPT 

;SET  LENGTH  TO  ZERO 


80  COLUMN  GRAPHICS 


^' '"""""*-'  CQIVI^^^^^^^B      The  Integrated 

"■■-.»:,»  '=omput^^   ^^^      Visible  Memory  for 

the  PET  has  now  been 
redesigned  for  the  new 
12"  screen  80  column 
and  forthcoming  40 
column  PET  computers 
from  Commodore.  Like 
earlier  MTU  units,  the 
new  K-1 008-43  package 
mounts  inside  the  PET 
case  for  total  protection. 
To  make  the  power  and 
flexibility  of  the  320  by  200 
bit  mapped  pixel  graphics  display  easily  accessible,  we  have 
designed  the  Keyword  Graphic  Program.  This  adds  45 
The  image  on  the  screen  was  created        graphics  commands  to  Commodore  BASIC.  If  you  have  been 
by  the  program  below.  waiting  for  easy  to  use,  high  resolution  graphics  for  your 

PET,  isn't  it  time  you  called  MTU? 


10  VISHEM:  CLEAR 

20  P=160:  Q=100 

30  XP=144:  XR=1. 5*3. 1415927 

40  Yi==56:  YR=1:  ZP=64 

50  XF-XR/XP;  yF=YP/YR:  ZF=XR/ZP 

eO  F0«  ZI=~Q  TO  Q-1 

70    IF    ZK-ZP   OR    ZI>ZP   GOTO    150 

80    ZT=ZI*XP/ZP:    ZZ=>Z1 

90  XL=INT(.5+SQR(XP*XP-ZT*ZT)) 
100  FOR  XI^-XL  TO  XL 
110  XT=SQR(XI*XI+ZT*ZT!*XF:  XX=XI 
120  YY=(SIN{XT)+.4*SIN(3*XT) ) *YF 
130  GOSOB  170  ; 
140  tJEXT  XI 
150  NEXT  ZI 
160  STOP 
170  X1«XX+2Z+P 
180  Y1=YY-ZZ+Q 

190  GMODE  li  MOVE  Xl,yl:  WRPIX 
200  IF  Y1=0  goto' 220  " 
210  GMODE  2:  LINE  X1,Y1-1,X1,0 
220  RETURN 


K-1008-43M  Manual  only  $10  (credited  toward  purchase) 
k-1008-43  Complete  ready  to  install  package  $495 

Mastercharge  and  Visa  accepted 

Write  or  call  today  for  our  full  line  catalog  describing  all 
MTU  6502  products,  including  our  high  speed  8"  Floppy 
Disk  Controller  for  up  to  4  megabytes  of  PET  storage. 


Micro  Technology  Unlimited 

2806  Hillsborouqii  Street       : 
'    PO.  Box  12106  i 

.    Raleigh.  NC  27605.  U.SA 
I9191B33I15B 


wsmm 


156 

COMPUTEI 

Febmarv  1982.  Issue  21 

0293- 

35 

fl? 

0290 

STfl 

*CUR     .: 

TURN  ON  CURSOR 

0295- 

20 

E4  FF 

0300 

GET 

JSR 

$FFE4 

0298- 

F0 

FE 

0310 

EEQ 

GET      .; 

WflIT  FOR  fl  KEV 

029fl- 

85 

E5 

0320 

STfl 

*CHRREC   .; 

SflVE  KEV  PRESSED 

029l:- 

C9 

0D 

0330 

criP 

#13     .; 

RETURN  KEV? 

029E- 

D0 

19 

0340 

ENE 

SKIPl    .; 

BRflNCH  IF  NOT 

02fi0- 

Fi4 

El 

0350 

LEV 

*LEH     .; 

IS  LENGTH  ZERO? 

02R2- 

F0 

15 

0360 

EEQ 

SKIP!    ; 

BRflNCH  IF  VES 

02fl4- 

fl9 

01 

0370 

LDfl 

#$01 

02flb- 

35 

fl? 

0330 

STfl 

*cuR    ; 

TURN  OFF  CURSOR 

02fl8- 

fl9 

92 

0390 

LDfl 

#146 

02flfl- 

20 

ri2  FF 

fl400 

JSR 

*FFD2    ; 

PRINT  RVS/OFF 

02flri- 

fl9 

20 

0410 

LDfl 

#32 

02flF- 

20 

ri2  FF 

0420 

JSR 

$FFD2    ; 

PRINT  SPACE 

02E2- 

fl9 

sn 

0430 

LDfl 

#141 

32B4- 

20 

E2  FF 

0440 

JSR 

|:FFD2    .: 

DO  CRLF 

02E?- 

H0 

4B 

0450 

ENE 

flDDVflR 

BRflNCH  flLWflVS 

02E9- 

R5 

El 

0460 

SKIPl 

LDfl 

*LEN 

CHECK  STRING  LENGTH 

0l;EE- 

C9 

25 

0470 

CMP 

#MflX 

Mfl>aMUM  LENGTH? 

02ED- 

D0 

06 

0480 

EHE 

SKIP2    .: 

NO 

02EF- 

fl5 

E5 

0490 

ldh 

#CHRREC  . 

VES..  CHECK  CHAR 

02C1- 

C9 

14 

0500 

CMP 

#20 

DELETE? 

02i::3- 

riR 

D0 

0510 

ENE 

GET 

NO..  NOT  DELETE 

02C5- 

IS 

0520 

SKIP2 

CLC 

02C6- 

fl5 

E5 

0530 

LDfl 

.*CHRREC 

02C.S- 

C3 

41 

0540 

CMP 

#65 

IS  CHAR  65  OR  MORE 

02Cfl- 

F0 

04 

0550 

EEQ 

OKI 

VES 

02i::i::- 

E0 

02 

0560 

ECS 

OKI 

02CE- 

lie 

12 

0570 

ENE 

SKIP3 

IT  WflS  LESS  THflN  65 

02II0- 

IS 

0580 

OKI 

CLC 

02rti- 

C9 

SB 

0590 

CMP 

#91 

:IS  IT  LESS  THflN  91? 

02113- 

B0 

011 

0600 

ECS 

SKIPS 

•NO 

02D5- 

fl4 

El 

0610 

0K2 

LDV 

*LEN 

02D?- 

flS 

B5 

0620 

LDR 

*CHRREC 

02D9- 

91 

E3 

0630 

STfl 

'••EUL>..V 

; STORE  CHAR  IN  BUFFER 

02DE- 

E6 

El 

0640 

IHC 

*LEN 

INCREMENT  LENGTH 

021111- 

20 

D2  FF 

0650 

DEL 

JSR 

$FFD2 

; PRINT  CHflRflCTER 

02E0- 

ri0 

E3 

y366Q 

BHE 

GET 

; BRANCH  RLWRVS 

02E2- 

fl5 

El 

0670 

SKIP3 

LDfl 

#LEN 

; CHECK  THE  LENGTH 

02E4- 

F0 

06 

0680 

EEQ 

SKIP4 

; BRflNCH  IF  LENGTH  O 

02E6- 

fl5 

E5 

0690 

LDfl 

*CHRREC 

;IS  IT  fl  SPACE? 

02E8- 

C9 

20 

0700 

CMP 

#32 

02EH- 

F0 

E9 

0710 

EEQ 

0f<2 

;VES..  THE  SPACE  IS  OK 

02EC- 

fl5 

E5 

0720 

SKIP4 

LDH 

*CHRREC 

;IS  IT  fl  DIGIT? 

02EE- 

C:9 

30 

0730 

CMP 

#48 

02F0- 

90 

04 

0740 

ECC 

SKIPS 

02F2- 

C9 

3Ff 

0750 

CMP 

#S8 

02F4- 

90 

DF 

0760 

ECC 

0K2 

:VES..  IT-'S  ft  DIGIT 

02F6- 

C9 

14 

0770 

SKIPS 

CMP 

#20 

;I3  IT  fl  DELETE? 

02F8- 

ri0 

9E 

0780 

ENE 

GET 

; BRflNCH  IF  IT  ISH-'T 

02Ffl- 

fl5 

El 

0790 

LDfl 

*LEN 

; CHECK  THE  LENGTH 

02Fi::- 

F0 

9? 

0300 

EEQ 

GET 

; BRflNCH  IF  IT'S  ZERO 

02FE- 

C6 

El 

0810 

DEC 

*LEH 

; DECREMENT  LENGTH 

0S00- 

fl9 

14 

0820 

LDfl 

#20 

;L0AD  a  WITH  DELETE 

0302- 

D0 

ri9 

0830 

ENE 

DEL 

;  BRANCH  ALWA't'S 

0304- 

20 

00  ri4 

0840 

flnnVFlR 

JSR 

GCOLL 

; GARBAGE  COLLECT 

NOW  COMMODORE  TALKS.  AND  LISTENS, 


COCNIVOX  VIO- 1002  is  a  spwch  rpcogniUon  and  \oice  output  peripheral  for  Com' 
iTKxlore  computers.  It  offers  sUle-of-the-art  capabilities  with  pleasant  sounding  natuf' 
at  voice  output  and  recognition  performance  tqua]  1o  that  of  nulls  costing  many  tlm« 
more.  I(s  capahlJiHes.  the  ver>'  aiiordable  price  and  its  variety  of  uses  make  it  a  "must 
have"  peripheral. 

Many  uses 

With  COGNIVOX  your  imagination  is  not  the  tlmil,  u  (he  saying  goes.  It  is  the 
starting  point.  Use  if  for  data  entr>'  when  the  hands  and/or  eyes  are  busy,  As  an  educa- 
tional (otil.  As  an  aid  (o  the  handicapped.  Or  as  a  foreign  language  translator,  a  sound 
effects  generator,  a  telephone  dialing  device,  an  answering  machine,  a  talking  calcula- 
tor or  clock,  Use  11  in  wnf unction  wilh  the  IEEE  488  port  to  control  by  voice  In- 
struments, plotters,  test  systems.  And  all  these  devices  can  talk  back  lo  you  telling  you 
thei  r  readi  rigs,  al  arm  conditions,  even  the!  r  names.  O  r  use  it  with  a  BSB  controller  1  n- 
(crface  {see  Compute,  Oc*,  81)  to  control  by  voice  lights  and  appliances  in  (he  house. 

Some  specif  teat  ions. 

COGNIVOX  can  be  (rained  lo  recognize  words  or  short  phrases  drawn  from  a  voca- 
bulary of  up  to  32  entries  chosen  by  the  user.  To  train  COGNIVOX  to  your  vocabulary, 
all  you  have  to  do  is  repeat  the  entries  (hree  limes  at  the  prompting  of  the  computer. 
The  voice  output  vocabulary  can  also  have  up  to  32  words  or  phra.M3  of  your  choice. 
Data  rale  Is  approsimately  700  bytes  per  word .  Vocabularies  can  be  stored  and  recalled 
from  disk^  giving  in  effect  unlimited  selection  of  entries. 

COGNIVOX  VIO- 1002  will  work  with  all  Commodore  computers  (old.  new  and 
newer  ROMs)  with  at  least  lOK  of  RAM,  It  comes  complete  with  assembled  and  tested 
hardware  in  a  quality  instrument  case,  speaker/ajtJplifier,  power  supply,  microphone, 
cassette  wilh  software  and  detailed  user  manual. 

Easy  lo  use 

All  you  need  lo  gel  COGNIVOX  up  and  running  Is  to  plug  (t  in  Ihe  user  pori  and 
load  one  of  the  programs  supplied.  Load  the  demon  program  and  start  talking  lo  your 
cijtnputer  right  sway.  Or  load  one  of  the  games  and  discover  the  magic  of  voice  con- 
trol. 

It  isea.<>y  to  write  your  own  talking  and  listening  programs  too.  A  single  statement  in 
BASIC  is  all  that  you  need  (o  say  or  to  recognize  a  word.  Full  instructions  on  how  to  do 
it  are  given  in  ihc  manual. 

Order  your  COCMVOX  now. 

To  order  by  mail  send  us  a  check  or  money  order  for  1249  plus  15  shipping  and  hand- 
ling (CA  residents  add  6%  tax).  You  may  also  order  by  phone  and  charge  it  to  your 
VISA  or  MASTERCARD.  Call  us  at  {805)  685-1854.  9AM  to  5PM.  PST.  M-F-  Foreign 
orders  are  welcome,  please  add  10%  for  air  mail  shipping  and  handling. 


VOICETEK 

P.O.  Box  388,  Goleta,  CA  93116 


0307- 

C6 

El 

0850 

DEC 

*LEN 

0303- 

fi4 

El 

0360 

CHECKSP 

LEV 

.*LEN 

030E- 

El 

E3 

0870 

LIiH 

<ELIL)..V 

030rf- 

C9 

20 

08S0 

CMP 

#$20 

03eF- 

110 

04 

0890 

ENE 

MOVE IT 

0311- 

C6 

El 

0900 

DEC 

*LEH 

0313- 

m 

F4 

0910 

ENE 

CHECKSP 

0315- 

fi4 

El 

0920 

MO': 

,.'EIT 

LEV 

*LEN 

0317- 

C:8 

0930 

INV 

0318- 

84 

EB 

0940 

STV 

*3LEN 

031fl- 

C6 

30 

0950 

MO'-, 

■'El 

DEC 

*BOS 

03 IC- 

R5 

30 

0960 

lbh 

*EOS 

031E- 

C9 

FF 

0970 

CMP 

#255 

0320- 

110 

02 

0980 

ENE 

POS 

0322- 

C6 

31 

0990 

DEC 

*B0S+1 

0324- 

fl4 

El 

1  000 

POS 

LBV 

*LEN 

0326- 

El 

B3 

1010 

LBF! 

(ELIL>..V 

032S- 

m 

00 

1020 

LBV 

#$00 

032fl- 

91 

30 

1030 

STfi 

CBOS>..V 

032C- 

C6 

El 

1040 

DEC 

*LEN 

032E- 

fl5 

El 

1050 

LBfl 

*:LEH 

0330- 

C3 

FF 

1060 

CMP 

#255 

0332- 

110 

E6 

1070 

ENE 

MOVEl 

0334- 

f\9 

01 

1080 

LBfl 

#$01 

0336- 

85 

fl7 

1090 

STR 

*CLIR 

0338- 

fl5 

2fl 

1100 

LINKTflB 

LBfl 

*VftR 

033fl- 

35 

E7 

1110 

STfl 

fSEflRCH 

033C- 

fl5 

2E 

1120 

LBfl 

*VflR+l 

.iPEEL   OFF  TRAILING  SPACES 

;BECREMENT   LENGTH   COUNTER 
; BRANCH  flLWflVS 


;SAVE  CURRENT  LENGTH 
.;DEC  STRING  PTR 


;M0VE  FROM   INPUT 

.:    BUFFER  TO  BOTTOM  OF 

.:    STRINGS 


;MflKE  SURE  CURSOR  OFF 
;SET   SEARCH  PTR 
;T0  LOCATIONS  POINTED 
.;T0  EV   START  OF 


158 

COMPUTEI 

February  19B2.  Issue  21 

033E- 

85 

E8 

1130 

STfl 

*SEflRCH+l 

.;  VARIABLES  POINTER 

0340- 

fl5 

2C: 

1140 

LDfi 

#ENDV 

;SET  END-OF-SEfiRCH 

0342- 

85 

E9 

1150 

STft 

*ENDS 

.: POINTER  TO  LOCATIONS 

0344- 

fl5 

211 

1160 

LDfi 

#ENDV+1 

.: POINTED  TO  EV  END-OF- 

0346- 

85 

Efi 

1170 

STfi 

*ENDS+1 

,:  VARIABLES  POINTER 

0348- 

fie 

00 

1180 

HUNT 

LDV 

#$00 

jHUNT  FOR  IN$  IN  TABLE 

034fi- 

Bl 

E7 

1190 

LDfi 

(SEARCH).. 

V 

034C- 

C9 

49 

1200 

CMP 

#$49 

; FOUND  I? 

034E- 

D0 

18 

1210 

ENE 

INCSEVEH 

.:N0 

0350- 

C8 

1220 

INV 

0351- 

Bl 

B7 

1230 

LDfi 

C  SEARCH  >.. 

V 

0353- 

C9 

CE 

1240 

crip 

#$CE 

; FOUND  N? 

0355- 

m 

11 

1250 

ENE 

INCSEVEH 

;H0 

0357- 

fl5 

EB 

1260 

LDR 

#3LEH 

9359- 

C8 

1270 

INV 

035fi- 

91 

E7 

1280 

STfl 

(SEARCH;-.. 

V       .;SET  LENGTH  OF  IN$ 

035C- 

C8 

1290 

INV 

035D- 

fl5 

30 

1300 

LDfi 

*EOS 

035F- 

91 

B7 

1310 

STfl 

(SEARCH).. 

V       .; POINTER  TO  STRING 

0361- 

C8 

1320 

INV 

0362- 

fiS 

31 

1330 

LDfi 

*E0S+1 

0364- 

91 

E7 

1340 

STfi 

(SEARCH).. 

V 

0366- 

ne 

28 

1350 

EHE 

RET 

.:  BRANCH  ALWAVS 

0368- 

fl2 

07 

1360 

INCSEVEH 

LDX 

#$07 

.;  INCREMENT  SEARCH 

036fl- 

E6 

E7 

1370 

HEVTE 

INC 

♦■SEARCH 

.;  POINTER  EV  7 

036C- 

D0 

02 

1380 

EHE 

SAMEPAGE 

B36E- 

E6 

ES 

1390 

INC 

#SEARCH+1 

0370- 

Cfl 

1400 

SfiMEPflGE 

DEJ^; 

0371- 

m 

F7 

1410 

ENE 

NEVTE 

0373- 

flS 

ES 

1420 

DONE? 

LDfi 

*SEARCH+1 

; CHECK  FOR  END 

0375- 

C5 

Efi 

1430 

crip 

*ENDS+1 

;  OF  VARIAELE  TABLE 

0377- 

90 

CF 

1440 

ECC 

HUNT 

0379- 

D0 

06 

1450 

ENE 

ADD  IN 

037E- 

fl5 

B7 

1460 

LDfi 

♦SEARCH 

03711- 

C5 

B9 

1470 

CMP 

♦ENDS 

037F- 

90 

C7 

1480 

ECC 

HUNT 

;MORE  TO  GO 

0381- 

fl9 

49 

1490 

ADD  IN 

LDfi 

#$49 

.:ADD  IN$  TO  TABLE 

0333- 

85 

42 

1500 

STfl 

♦SNflME 

;SET  UP  NAME  OF  STRING 

0385- 

m 

CE 

1510 

LDfl 

#$CE 

0337- 

85 

43 

1520 

STfl 

♦SHAME+l 

0339- 

20 

01  ri0 

1530 

JSR 

flDDSTR 

038C- 

F0 

flfl 

1540 

EEQ 

LINKTAE 

;N0W  go  look  FOR  IT 

03SE- 

D0 

flS 

1550 

ENE 

LINKTAE 

0390- 

fl5 

2C 

1560 

RET 

LDfl 

♦ENDV 

.; POINTERS  OK? 

0392- 

C5 

2fl 

1570 

CMP 

♦VflR 

0394- 

ri0 

15 

1580 

ENE 

EfiSIC 

.;  VES 

0396- 

fi5 

211 

1590 

LDfl 

♦ENDV+1 

0398- 

C5 

2E 

1600 

CMP 

♦VHR+1 

039R- 

ri0 

0F 

1610 

ENE 

BASIC 

039l:- 

fi2 

07 

1620 

LDK 

#$07 

Z139E- 

E6 

2C 

1630 

fiDJUST 

INC 

♦ENDV 

.;N0.  FIX  POINTERS 

03fl0- 

E6 

2E 

1640 

INC 

♦ENDV+2 

03fl2- 

m 

04 

1650 

ENE 

SflPAGE 

0Sfl4- 

E6 

2D 

1660 

INC 

♦ENDV+1 

0306- 

E6 

2F 

1670 

INC 

♦ENDV+3 

' 

03fl8- 

Cfi 

1680 

SfiPftGE 

DEX 

Febnjarv.19e2.fs5ue21  COMPUTEI  159 

03FI9-  B0  F3  1690  EHE  ADJUST 

03fiE-  60  1700  EflSIC  RTS     ; RETURN  TO  BASIC 

1710  .EN 

Program  2. 

100  REM        ***  RELOCRTfiELE  LINE    INPUT 

110  REM        **if:  FOR  UPGRflDE  ROM  PETS 

120  REM 

130  REN   ***  EV  ROBERT  LfiNDO 

140  REM       146  VAN  HORNE  AVENUE 

150  REM       TORONTO..  CANADA 

160  REM 

170  REM 

180  PRINTMa_INE  INPUTS  ROBERT  LfiNDO" 

190  PRINT":«!!PLEASE  ENTER  THE  DECIMAL  LOCATION  THAT" 

200  PRINT-'Wt'OU  NOULD  LIKE  THE  LINE  INPUT  PROGRAM" 

210  PRINT":?irO  START  AT.  IF  VOU  ENTER  AN  ASTERISK.." 

220  PRIHT";«!ITHE  PROGRAM  MILL  BE  PACKED  INTO  THE" 

230  PRINT";flEND  OF  AVAILABLE  MEMORV  AND  THE" 

240  PRINT'-W^ECESSflRV  POINTERS  WILL  BE  ADJUSTED  TO" 

250  PRIHT";?F'ROTECT  IT  FROM  BEING  OVERWRITTEN  EV" 

260  PR  I  NT  "  :«!ETR  I NGS .  m" 

270  INPUT"   *IHI";S$ 

280  IFS$="*"THEN310 

290  S=VflL  (.  -5$  y  ■■  I  FS<:5 1 20RS>36559THENPR  I  NT  "  H" ;  :  ijnTO270 

300  E=S+3y5 : GOTO330 

310  M=PEEK'::52>+PEEK<53::'*256  :  E=M  ■  S=M-305 

320  M=S:P0KE53..M/256:P0KE52..M-256*PEEK<53> 

330  F0RX=STUE :  READV  •  POKEX..  V :  NEXTX 

340  PRIHT":JTHE  LINE  INPUT  PROGRAM  IS  NOW  IN" 

350  PRINT":t!l1EM0RV.  WHEN  VOU  USE  THE  COMMAND" 

360  PR  I  NT"  MS  VS  ■;'".;  S .:"  >  IN  A  PROGRAM,.  WHATEVER" 

570  PRINT":?ITHE  USER  ENTERS  WILL  BE  TRANSFERRED" 

380  PRINT":«!irO  THE  BASIC  VARIABLE  IN$" 

390  END 

400  DfiTfl32 ..  1 28 ..  2 1 0 .- 1  S3 . 2 ..  1 33 ..  1 30 ..  1  €3 ..  0 ..  1 33 ..  1 79 ..  1  €3  ..141..  32 ..  2 1 0 ..  255 ..  1 69 

410  DATA62..32..210..255..  169.. O..  133..  177..  133..  167. .32 .-228. .255 ..240. .251..  133..  181 

420  DATA20 1 ..  1 3 ..  208 .  25 ..  1 64 . 1 77 ..  240 ..  2 1 ..  1 G9 ..  1 ..  1 33 ..  1 67 ..  1 69  ..146 ..  32  ..210 ..  255 ..  1 69 

430  DATA32 ..  32..  21 0 ..  255 ..  1 69 ..  1 4 1 ..  32..  2 1 0 ..  255 ..  208 ..  75 ..  1 65 ..  1 77 ..  20 1 ..  37 ..  203 ..  6 

440  DATA  1 65  ..181 ..  20 1 ..  20 ..  208 ..  208 ..  24 ..  1 65 ..  1 8 1 ..  28 1 ..  65 ..  248 ..  4 ..  1 76 ..  2 ..  203 ..  1 8 ..  24 

450  D ATA20 1 ..  9 1 ..  1 76 ..  1 3 ..  1 64 ..  1 77 ..  1 65 ..  1 8 1 ..  1 45 ..  1 79 ..  230 ..  1 77 ..  32 ..  2 1 0 ..  255 ..  208 

460  DATA179..  165..  177..240..6..  165..  181..281..  32..240..233..  165..  181  ..231  ..48..  144..4..201 

470  DRTA5S  ..144..  223 ..  20 1 ..  28 ..  208 ..  1 55 ..  1 65  ..177..  240 ..  1 5 1 ,.  1 98 ..  1 77 ..  1 69 ..  20 ..  203 

480  riATA217..32..0..212..  198..  177..  164..  177..  177..  179..  201 ..  32..  203..  4..  198..  177.. 208 

490  DHTA244 ..  1 64 ..  1 77 ..  200 ..  1 32 ..  1 87 ..  1 98 ..  48 ..  1 65 .-  48 ..  20 1 ..  255 ..  208..  2 ..  1 98 ..  49 ..  1 64 

500  DATA  1 77 ..  1 77 ..  1 79 .-  1 60 ..  O ..  1 45 ,-  43 ..  1 98 ..  177..!  65 ..  1 77 ..  20 1 ..  255 ..  208 ..  230 ..  1 69 ..  1 

5 1 0  DATA  1 33 ..  1 67 ..  1 65 ..  42 ..  1 33 ..  1 35i ..  1 65 ..  43 ..  1 33 ..  1 34 ..  1 65 ..  44 ..  1 33 ..  1 85 ..  1 65 ..  45 ..  1 33 

520  DATA  1  o b .  1 60 ..  0 ..  1 77 ..  1 83 ..  28 1 ..  73 ..  208 ..  24 ..  288 ..  1 77 ..  1  S3  ..281 ..  286 ..  208 ..  1 7 ..  1 65 

530  DATA  137..  280 . 1 45 ..  1 33  >  200 ..  1 65 ..  48 ..  1 45 ..  1  S3 .-  208 ..  1 65 ..  49 ..  1 45 ..  1  S3 ..  288 ..  40 ..  1 62 

540  DATA7 ..  230 .  1 83 ..  203 ..  2 ..  230 ..  1 84 ..  282 ..  288 ..  247 ..  1 65 ..  1 84 ..  1 97 ..  1 36  ..144..  287 ..  208 

550  DRTfib..  165..  183..  197..  135..  144..  199..  169..  73..  133..  €-6, 169,.  286..  133..  67..  32..  1 

560  DflTA20S ..  240 ..  1 70 ..  208 . 1 63 ..  1 65 ..  44 ..  1 97 ..  42 ..  288 ..  2 1 ..  1 65 ,.  45 ..  1 97 ..  43 ,.  268 ,.  1 5 

570  DATA  1 62 ,.  7 ..  230 ,.  44 ,.  238 ..  46 ..  288 ..  4 ,.  258 ,.  45 ..  238  ..47..  282 ,.  203 ..  243 ..  36 

READV. 


160 


COMPUTII 


Febmarv,  1982,  Issue  21 


Measure  Time 
Intervals  With 
The  Pet 
Parallel 
User  Port 

Robert  Macnaughton 
Rexdole,  Canada 

This  article  describes  a  machine  language  program 
that  can  be  used  to  measure  seven  successive  small 
time  intervals,  using  the  CBM  Parallel  User  Port 
(PUP),  and  eight  phototransistors,  to  the  nearest 
1/lOOOOs. 

Since  no  page  zero  locations  are  used,  this 
program  should  run  on  any  PET  {except  4.0,  since 
it  would  need  to  be  moved  above  864  decimal  for 
4.0  BASIC). 

The  PUP,  located  at  the  back  of  the  CBM, 

consists  of  24  contacts  to  the  main  logic  board, 

labelled  as  follows: 

12        3       4       5       6       7        S       9      10       11      12 

I  I 

ABCDEFHJKLMN 

Only  the  bottom  row  of  contacts  will  be  used.  The 
top  row  of  contacts  are  for  use  by  CBM  diagnostic 
routines  during  servicing. 

On  the  bottom  row  of  contacts,  Pin  M  is  the 
CB2  line,  used  in  many  programs  for  sound 
effects;  contacts  A  and  N  are  grounds,  and  contact 
B  is  the  CAl  line. 

We  will  use  contacts  C,D,E,F,H,J,K  and  L, 
known  as  PAG,  PAl,  PA2,  PAS,  PA4,  PAS,  PA6 
and  PA7,  the  programmable  input/output  lines,  to 
receive  information  from  eight  phototransistors, 
the  detectors  of  the  position  of  some  moving 
object. 

The  eight  lines  are  treated  by  the  PET  as  a 
single  memory  location,  59471  in  decimal  or 
$E84F  in  hexadecimal.  It  is  known  as  the  ORA,  the 
output  register  for  I/O  Port  A,  without  hand- 
shaking. At  any  time,  a  PEEK(59471)  will  indicate 
the  condition  of  the  ORA. 

The  DDR  A,  the  data  direction  register  for 
Port  A,  is  used  to  designate  which  are  the  input 
aild  which  are  the  output  lines  of  the  ORA.  Its 
address  is  59459  or  SE843.  A  zero  in  bit  three 
would  make  PAS  an  input  line  and  a  one  would 


make  it  an  output  line.  If  you  POKE  59459,76  then 
PA2,  PAS  and  PA6  will  be  output  lines  and  the  rest 
input  lines,  since  76  in  binary  is  01001 100. 

In  this  timer,  all  eight  lines  are  made  inputs  by 
POKE  59459,0.  A  PEEK(59459)  when  the  CBM  is 
first  turned  on  will  show  that  all  the  lines  are 
initially  inputs. 

When  running,  the  timer  program  looks  at  the 
contents  of  the  ORA  again  and  again.  To  under- 
stand the  result,  the  contents  of  5947 1  must  be 
expressed  as  a  binary  number.  Each  of  the  eight  1/ 
O  lines  corresponds  to  one  bit  in  this  number.  Any 
line  grounded  will  be  represented  as  a  0.  If  not 
grounded,  it  will  be  represented  as  a  1.  More 
exactly,  if  a  resistance  of  less  than  about  2000/T.  is 
connected  from  a  PA  line  to  GND,  the  state  of  the 
line  will  be  interpreted  as  a  0.  If  the  resistance  is 
more  than  2000jn.  ,  it  will  be  interpreted  as  a  1. 

If  you  PEEK(5947l)  with  nothing  connected 
to  the  PUP,  you  will  get  255.  If  you  short  out  all 
eight  lines,  you  will  get  a  0.  (First  make  sure  that 
they  are  all  input  hnes.) 


PA7 

PA6 

PAS 

PA4 

PA3 

PA2 

PAl 

PAO 

bit 

7 

6 

5 

4 

3 

2 

1 

0 

value 

128 

64 

32 

16 

8 

4 

2 

I 

59471 


255 

1 

1 

1 

I 

I 

I 

1 

1 

0 

0 

0 

0 

0 

0 

0 

0 

0 

1 

0 

0 

0 

0 

0 

0 

0 

I 

2 

0 

0 

0 

0 

0 

0 

1 

0 

4 

0 

0 

0 

0 

0 

1 

0 

0 

8 

0 

0 

0 

0 

1 

0 

0 

0 

16 

0 

0 

0 

1 

0 

0 

0 

0 

32 

0 

0 

1 

0 

0 

0 

0 

0 

64 

0 

1 

0 

0 

0 

0 

0 

0 

128 

1 

0 

0 

0 

0 

0 

0 

0 

214 

1 

I 

0 

1 

0 

1 

1 

0 

The  collectors  of  eight  FPTIOO  phototransis- 
tors are  connected  to  the  eight  PA  lines,  and  their 
emitters  to  ground  at  contact  N.  When  enough 
light  strikes  a  phototransistor  such  as  the  FPTIOO, 
its  resistance  falls  to  about  200.0. .  This  is  inter- 
preted as  a  0  in  the  ORA.  When  the  light  is  cut  off, 
the  resistance  increases  dramatically  and  is  inter- 
preted as  a  1 .  As  an  object  passes  by  a  phototransis- 
tor, the  state  of  that  PA  line  will  change  from  0  to  1 
and  back  to  0  as  the  light  is  temporarily  interrupted. 

I  have  placed  the  phototransistors  in  holes 
drilled  in  a  meter  stick  15  cm  apart.  The  position 
of  the  first  phototransistor  must  be  adjustable  to 
start  the  timer  at  the  correct  moment.  Opposite 
each  phototransistor  is  a  small  flashlight  bulb 
attached  to  a  second  meter  stick.  The  two  meter 
sticks  are  placed  on  either  side  of  a  ramp,  A  large 


PETTERM 

INTELLIGENT 
TERMINAL 


PETTERM  I 
PETTERM  II 

PETTERM  III 


Turn  your  PET  into  an  in«IHg»nt 
tarminai  with  an«  of  our  tarminal 
package*.  Theta  are  complete  at- 
sambied  hardware  and  soft^i^/are 
package!.  All  include  line  editing/ 
rsHnd,  repeat  key,  shift  lock,  out- 
put to  CBM  printer,  and  more  .  .  . 
Oellvared  on  PET  cauene  with 
manuali. 


All  featurei  above $75.00 

AN    feeturee  of  I,  plui  local   text  aditor 
with  down-loading  capabiiitv  .  .    S90.00 

All    feature!    of   II,   plu>  30/132   column 
scrolling  window   for   viewing   forrnatted 
outputs  wider  than  40  coJuinnt. 
$100.00 


forth 


for  PET/CBM 


FORTH  is  a  new  concept  in  programming,  with 
the  speed  of  compilers  and  interactive  ease 
of  BASIC.  Programs  become  a  part  of  FORTH 
extending  iheponerof  FORTH  and  your  PET . 

8050,4040  disk,  cassette  all  PET-CBf\/ls  t6k+ 

Start«c  fig-FORTHw  adllor  assembler  S35 

Personal  floating  pointg  ilrings)  source  $75 

Profeisienal      turnkey  development/data  base 


S259 


1903  Rle  Grand* 

Aurttrij  T*x«s 

78705 


1-512-4 77-22«7 


P.O.    tox     S403 

Austin. T«x«s 
78712 


DEALERS  INQUIRE 


CBM/PET  INTERFACES 


RS-232  SERIAL  PRINTER  INTERFACE -addressable - 
baud  rates  to  9600  -  switch  selectable  upper/lower, 
lower/upper  case -works  with  WORDPRO,  BASIC  and 
ott^er  software  -  includes  case  and  power  supply. 

MODEL- ADA1450     149.00 

CENTRONICS/NEC  PARALLEL  INTERFACE -address- 
able -  high  speed  -  switch  selectable  upper/lower, 
lower/upper  case  -  works  with  WORDPRO,  BASIC  and 
other  software  -  has  Centronics  36  pin  ribbon  connector 
at  end  of  cable. 

MODEL -ADA1 600     129.00 

CENTRONICS  730/737  PARALLEL  INTERFACE  -  as 
above  but  with  Centronics  card  edge  connector  at  end 
of  cable. 

MODEL -ADA730     129.00 

COMMUNICATIONS  INTERFACE  WITH  SERIAL  AND 
PARALLEL  PORTS  -  addressable  -  software  driven  - 
true  ASCII  conversion  -  selectable  reversal  of  upper- 
lower  case  -  baud  rates  to  9600  -  half  or  full  duplex  -  X- 
ON,  X-OFF  -  selectable  carriage  return  delay  -  32  char- 
acter buffer -Centronics  compatible  —  much  more. 

MODEL -SADI     295.00 

ANALOG  TO  DIGITAL  CONVERTER  - 1 6  channels  -  0 
to  5.12  volt  input  voltage  range  -  resolution  is  20  milli- 
volts per  count  -  conversion  time  is  less  than  1 00  micro- 
seconds per  channel. 

MODEL -PETSET1     295,00 

REMOTE  CONTROLLER  WITH  CLOCK'CALENDAR 
-  controls  up  to  256  devices  using  the  BSR  X10  remote 
control  receivers  -  8  digital  inputs,  TTL  levels  or  switch 
closure  —  8  digital  outputs,  TTL  levels. 

MODEL -PETSET2    295.00 

All  prices  are  in  US  dollars  for  120VAC, 

Prices  on  220  VAC  slightly  higher. 

Allow  $5.00  shipping  &  handling,  foreign  orders 

add  1 0%  for  AIR  postage. 

Connecticut  residents  add  7V2%  sales  tax. 

All  prices  and  specifications  subject  to  change  without  notice. 

Our  30  day  money  back  trial  period  applies. 

MASTER  CHARGE/VISA  accepted. 

fvlENTION  THIS  MAGAZINE  WITH  YOUR  ORDER 

AND  DEDUCT  5%  FROM  TOTAL, 

IN  CANADA  order  from:  Batteries  Included,  Ltd.,  71  McCaul 

Street,  F6  Toronto,  Canada  M5T2X1,  (416)596-1405. 

IN  THE  USA  order  from  your  local  dealer  or  direct:  Connecticut 

microCon-iputer,  Inc.,  34  Del  Mar  Drive,  Brookfield,  CT  06804 

(203)775-4595. 

Dealer  Inquiries  invited. 


Connecticut  microcomputer,  Inc. 

34  Del  Mar  Drive,  Brookfield,  CT  06804 
203  775-4595  TWX:  710  456-0052 


162 


COMPUTEI 


Febmory.  1982,  Issue  21 


ball  bearing  rolling  down  the  ramp  will  be  timed  as 
it  interrupts  each  light  beam  in  turn. 


GND 


If  the  times  you  wished  to  measure  were  long, 
you  could  write  a  BASIC  program  to  measure 
these  time  intervals,  using  the  internal  "jiffy"  clock 
of  the  PET.  The  light  to  each  phototransistor 
would  have  to  be  cut  off  long  enough  that  it  would 
still  be  cut  off  when  the  program  got  around  to 
checking  the  state  of  5947 1 . 

To  fully  utilize  the  1  megacycle  clock  in  the 
CBM,  a  machine  language  program  must  be  used. 

The  program  begins  by  setting  the  interrupt 
flag.  This  will  ensure  that  the  timmig  will  not  be 
interrupted  by  the  CBM  as  it  performs  its  normal 
interrupt  every  1/60  s,  to  update  its  clock,  flash  the 
cursor  if  needed,  etc. 

It  then  goes  into  a  loop  to  load  all  the  various 
memory  locations  used  to  store  the  times,  with 
zeros.  At  the  same  time  it  prints  a  ?  at  the  top  left 
of  the  screen.  It  then  goes  into  a  second  loop  to 
wait  for  PA?  to  become  1  when  the  ball  is  rolled 
into  place  at  the  top  of  the  ramp.  An  R  for  READY 
now  appears  on  the  screen. 

The  following  table  shows  how  the  ORA 
changes  as  the  ball  rolls  down  the  ramp. 

SCREEN      BINARY      DECIMAL 


5 

00000000 

0 

ball  not  on  ramp 

R 

00000001 

1 

ball  in  place  at  top  of  ramp 

T 

00000000 

0 

ball  rolling 

I 

000000 10 

2 

passes  PA  1 

1 

00000000 

0 

ball  rolling 

2 

00000100 

4 

passes  PA2 

2 

00000000 

0 

ball  roiling 

3 

00001000 

8 

passes  PA3 

3 

00000000 

0 

ball  rolling 

4 

00010000 

16 

passes  PA4 

4 

00000000 

0 

ball  rolling 

5 

00100000 

32 

passes  PAS 

5 

00000000 

0 

ball  rolling 

G 

01000000 

64 

passes  PA6 

6 

00000000 

0 

ball  rolling 

7 

10000000 

128 

passes  PA6 

When  59471  becomes  0,  the  timer  enters  a  timing 
loop.  Each  dme  through  the  loop  it  checks  59471 
for  a  0,  then  adds  1  to  a  counter.  When  5947 1  has 
the  next  expected  value,  the  contents  of  this  counter 


are  stored,  and  the  timing  resumes,  continuing 
until  all  seven  times  have  been  measured.  When 
the  program  returns  to  BASIC,  the  contents  of  the 
memory  locations  containing  the  count  can  be 
recalled  and  converted  to  seconds. 

Since  each  timing  loop  takes  43  cycles  of  the 
CBM's  internal  1  megacycle  clock,  each  count 
represents  43  microseconds. 

The  count  is  contained  in  three  locations.  The 
first  is  incremented  in  each  loop.  The  second  is 
incremented  only  when  the  first  passes  255  and 
becomes  0  again.  The  third  is  incremented  only 
when  the  second  passes  255  and  becomes  0  again. 
The  largest  count  possible  is  then 
(255x256x256)  +  (255x256)  +  255  or  167772 15. 
This  is  slightly  more  than  12  minutes. 

I  have  included  a  second  copy  of  the  machine 
language  program  which  shows  the  timing  loop. 
Beside  each  step  I  have  written  the  number  of 
cycles  of  the  PET's  internal  clock  that  are  needed 
to  complete  each  step.  The  total  number  of  cycles 
is  43.  Some  extra  time  is  used  to  store  the  count  as 
each  phototransistor  is  passed.  If  you  wish,  this 
could  be  calculated  and  added  on  to  the  total  time 
as  a  correction, 

I  have  also  included  a  BASIC  program  to 
operate  the  clock  in  an  organized  fashion.  It  asks 
you  how  many  runs  you  wish  to  make  down  the 
ramp,  then  stores  the  seven  times  for  each  run. 
Eventually,  the  average  time  for  each  part  of  the 
run  is  calculated.  With  a  few  minor  changes,  this 
program  can  be  used  in  almost  any  situation  where 
accurate  timing  is  needed. 

TIMER  COMMENTS 

1  Disable  the  interrupt  flag 

2  Load  the  actum  with  the  code  for  ? 

3  Store  at  top  left  corner  of  screen 

4  Load  the  x-regisier  with  a  2 
5.    Store  the  2  at  0336 

6  Load  the  y-regisier  with  decimal  25 

7  Load  the  accum  with  a  0 

8  Store  0  at  all  locations  from  03DF  to  03DF  +  25  by 
looping  until  y  =  0 

10  Compare  y  with  zero 

11  12   If  y  isn't  zero  then  loop  to  step  7 

12  Load  accum  with  the  contents  of  5947 1 

13  ChcckifP.\Oisa  loraO 

14  If  PAO  =  0  then  loop  and  check  again 

15  Now  PAO  is  1 :  R  for  Ready  into  accum 

16  store  R  on  the  screen 

17  This  is  a  time  delay  while  things 

18  seiilc  down.  Load  x  and  y  with  255 

19  and  decrement  them  both  to  zero. 

20  Each  time  x  decrements  from  255  to  0 

21  y  decrements  by  one.  Finally  both  are 

22  zero 

23  Load  accum  with  59471  once  iriore 

24  re.si  to  see  if  PAO  is  still  a  1 

25  If  .so,  loop  back  to  2'5  and  try  again 

26  Now  PAO  is  a  0,  the  timing  must  start 


Introducing  The 

FINANCIAL 


Diskette  Programs  lor  16K  PET/CBM 


'^Financial  Programs 


The  Wizard  helps  you  quickly  calculate  12  major  types 
of    Financial  Transactions  witti  ease  and  accuracy. 

Created  for  businesses  and  individuals.  Ihis  DISK 
PACKAGE  has  9  programs  plus  instructions.  The  Wizard 
delivers  answers  on  the  screen  or  printer. 


CASCADE  COMPUTERWARE 

Bw  2354  •  Evsrett,  WA  98203 


(206)  355-6121 

Dealer  inquiries  invited 


X 


PET/CBIVl 

2000/3000/4000  Series 

not:  uang  a  CRT,  or  display  controller  chip 


Select  eitl^e^ 
SO  X  S5  or  ao  X  S5 


On  TInie 
Built-in 
Display 


From  the  keyboard  or  program 

Displays  the  full,  original   character   set 


Available  fr^om  your  local  dealer  or: 
EXECOM  CORP. 

1901  Polaris  Ave. 
Racine.  Wl  53404 
Ph.  414-632-1004 


•  Plus  installat;ion  change  of  S7S.OO 

Available  only  for  Besic  3.0  S  Basic  4.0 

PETS  CBIV1^"a 

f-ademark  of  Commadore  Business  Mscinines 


Commodore  3.0/4.0/2.1 
Dos  Source  Code! 

Complete  annotated  source  code  for  J.o  ROMs,  i.O  ROMs 
and  2.1  DOS  (4040-,8050-dlsk)  now  available.  All  entry 
points,  routine/variable  names,  Info  on  routine  operation, 
register  contents,  etc.  Included,  a.o  source  code  comes 
with  s.o  correspondence  codes  so  you  can  change  J.O 
machine-language  programs  to  4.0  and  vice  versa. 
HarOcopv  only.  $129.  each.  All  3  (3.0,  4.0,  2.1  OOS)  for 
$310.00.  Source  flies  on  diskette  on  special  order, 

Software/Firmware 


•  EXTRAMON  extended 
monitor  in  2KEPR0M  for 
any  slot,  3.0/4.0  ROMs, 
plus  hardcopy  documen- 
tation. J19.95 

•  DISK  MONITOR"  -  reads 
T/S  from  dIsK  to  screen 
at  0.21  seconds/blk. 
Allows  editing  Uke  the 
resident  monitor,  up- 
dates disk,  traces 
llnks.etc. 


FAST!  31,1  Kbytes/sec. 

{49.95 

•  BULLETPROOF^  -  full- 
Screen  Input  routine. 
Uses  machine-language 
to  get  user  Input,  places 
it  In  a  user-defined 
variable.  Text  on  screen 
outside  field;  impossible 
to  disturb.  Documented 
source  code  incl.  with 
disk.  $29.95 


Authorized 
dealer  for 
RPL' compilers 


lu*  N.W.  Btn  Ave.,  Ft.  Laudsmale,  PL  »311  (301)  S25-1IS1 


NEW  PET/CBM  SOFTWARE 

Let  Computer  Mat  turn  }^our  Pet  into  a 
Home  Arcade! 

BLAST-IT  —  Its  your  ship  vs.  a  swarm  of  killer  gammaroidz.  You 
are  on  a  collision  course  and  must  destroy  them  before  they  blast 
you  into  the  next  galaxy.  Four  levels  of  play.  Has  hypcrspace  keys 
that  move  you  around.  Arcade  style  entertainment  at  its  finest. 
GREAT  GRAPHICS  AND  SOUND. 

Cass.  8K    $9.95 

MUNCHMAN  —  How  many  dots  can  you  cover?  It's  you  against 
the  computer  munchers  ZIP  and  ZAP.  Can  you  clear  the  maze  first 
or  will  they  get  you?  Number  keys  move  you  up,  down,  right  and 
left.  GREAT  GRAPHICS  AND  SOUND. 

Cass.  8K    S9.95 

LAZER-ATTACK  —  Its  you  against  a  barrage  of  enemy  lazers 
that  are  aimed  a!  your  ammo  dumps.  Sight  in  on  the  targets  and 
score  as  many  hits  as  you  dare.  As  your  skill  increases  so  does  the 
the  difficulty  —  (10  levels  to  select).  This  is  an  arcade-style  game 
with  great  graphics  and  sound  effects.  A  must  for  your  PET/CBM. 

Cass.  8K    $9.95 

ALL  OUR  SOFTWARE  RUNS  IN  SK 

OLD- NEW  ROM  -  40  CHR.  SCREEN 

WRITE  FOR  FREE  CATALOG  OF  VIC/PET  SOFTWARE 

PLEASE  ADD  SJ.OO  PER  ORDER  FOR  SHIPPING 

COMPUTER  MAT  •  BOX  I661IC  •  LAKE  HAVASU  CITY,  AZ.  86403 


164 


COMPUTE! 


27  Store  a  T  on  the  screen 

28  Begin  timing  loop  by  clearing  the 

29  carry  flag,  then  load  accum  with  03E0 
32  Add  1  to  the  contents  of  this 

30  location  and  then  store  it  back  there 

31  Add  zero  to  the  contents  of  ()3E1 

32  {and  1  if  the  carry  flag  was  set  by 

33  the  previous  addition)  and  store  it 

34  Add  zero(  +  1  if  the  carry  flag  is  set) 

35  to  the  contents  of  03E2 

36  O3E0,  ()3E  1 ,  03E2  contain  the  total  time 

37  Check  5747 1  to  see  if  the  next  PA 

38  line  is  a  1  or  a  0  using  0336 

39  0336  contains  a  2:  binary  000000 10 

40  If  a  0,  loop:  if  a  1,  then  arithmetic 

41  shift  left  the  value  in  0336:  see  text 

42  Store  the  three  values  representing 

43  the  elapsed  time  using  the  current 

44  value  of  y  (It  is  0  to  start  with) 
45 

46 
47 

48  Clear  the  carry  flag  before  addition 

49  Transfer  y,  a  counter,  to  the  accum 

50  Add  177  to  it  to  make  it  the  ASCII 

51  code  for  y  and  store  it  on  screen 

52  Increment  y  (next  time  measurement) 

53  Compare  y  with  7:  If  y  is  less  than  7 

54  then  go  hack  to  start  of  timing  cycle 

55  If  y  is  7,  the  program  is  over:  clear 

56  interrupt  flag  and  return  to  BASIC 


Program  1 . 

TIMER 

1 

033H 

73 

2 

033E 

R9 

BF 

03311 

an 

00 

30 

4 

0340 

fl2 

02 

5 

0342 

&E 

36 

03 

6 

0345 

R0 

19 

7 

0347 

fl9 

00 

8 

0349 

99 

riF 

03 

9 

034C 

88 

10 

034D 

C0 

00 

11 

034F 

110 

F6 

12 

0351 

RD 

4F 

E8 

13 

0354 

29 

01 

14 

0356 

F0 

F9 

15 

0358 

fiy 

92 

16 

ti35fl 

SD 

00 

80 

17 

03511 

R0 

FF 

13 

035F 

R2 

FF 

19 

0361 

Cfl 

;^0 

0362 

110 

FIi 

21 

0364 

88 

22 

0365 

110 

Ffi 

23 

0367 

fill 

4F 

E8 

24 

036fl 

29 

01 

25 

036C 

1(0 

F9 

$033fl  SVS  826 


SEI 

LIiR 

#EF 

STfl 

8000 

LDX 

#02 

STX 

0336 

LDV 

#19 

Llifl 

#00 

STfl 

03riF..V 

riEV 

CPY 

#00 

BNE 

0347 

LDfl 

E34F 

RNIi 

#01 

EEQ 

0351 

Llifl 

#92 

STfl 

8000 

LDV 

#FF 

LDX 

#FF 

DEX 

BHE 

0361 

DEV 

EHE 

0361 

LBR 

E34F 

RND 

#01 

BHE 

0367 

26 

036E 

R9 

94 

27 

0370 

811 

00 

80 

28 

0373 

13 

29 

0374 

RD 

E0 

03 

30 

0377 

69 

01 

31 

0379 

811 

E0 

03 

32 

037C: 

flD 

El 

03 

33 

037F 

69 

00 

34 

0381 

Sli 

El 

03 

35 

0384 

Rli 

E2 

03 

36 

0387 

69 

00 

37 

0389 

SB 

E2 

03 

38 

03  3C 

RD 

4F 

E8 

39 

03SF 

211 

36 

03 

40 

0392 

F0 

DF 

41 

0394 

0E 

36 

03 

42 

0397 

RD 

E0 

03 

43 

039R 

99 

E3 

03 

44 

03911 

RD 

El 

03 

45 

03R0 

Qq 

Efl 

03 

46 

03fl3 

RD 

E2 

03 

47 

03fl6 

99 

Fl 

03 

48 

03fl9 

18 

49 

03flR 

98 

50 

03flE 

69 

El 

51 

03Rri 

8D 

00 

80 

52 

03E0 

C:8 

53 

03E1 

C0 

07 

54 

03E3 

ri0 

BE 

55 

03E5 

58 

56 

03B6 

60 

Fabruory  1982.  Issue  21 

LDfl 

#94 

STfl 

3000 

CLC 

LDfl 

03E0 

ADC 

#01 

STfl 

03E0 

LDR 

03E1 

RDC 

#00 

STfl 

03E1 

LDfl 

03E2     - 

ADC 

#00. 

STfl 

03E2 

LDfl 

E84F 

AND 

0336 

EEQ 

0373 

fiSL 

0336 

LDR 

03E0 

STR 

03E3A' 

LDR 

03E1 

STR 

03ERA' 

LDfl 

03E2 

STfl 

03F1A' 

CLC 

TVR 

RDC 

#E1 

STfl 

8000 

IHV 

CPV 

#07 

EHE 

0373 

CLI 

RTS 

Program  2. 


READY . 

10  REM  TIMER  BASIC 

20  REM  ROBERT  MACNAUGHTON  OCT  5/80 

25  REM  2124  GREENHURST  AVE 

30  REM  MISSISSAUGA    L4X  1J6 

35  REM  THE  MACHINE  LANGUAGE  PROGRAM  -i 

-iMEASDRES  7  TIMES  DURING  A  SINGLE  - 

-.TRIP 
40  REM  UP  TO  8  PHOTOTRANSISTORS  ARE  -. 

-nCONNECTED  TO  PA0-7 
45  REM  SYS  826  ACTIVATES  THE  TIMER  AND  -. 

-1?  APPEARS 
50  REM  WHEN  PA0  IS  BLOCKED  OFF,  R  -i 

-.APPEARS  AND  THE  TIMER  IS  READY  TO 

-.STARf 
60  REM  WHEN  LIGHT  AGAIN  FALLS  ON  PA0 , 

-.  THE  TIMER  STARTS  AND  T  APPEARS 
70  REM  AS  EACH  OF  PAl-7  IS  CUT  OFF, 

-.  THE  TOTAL  ELAPSED  TIME  IS  STORED 
75  REM  AS  EACH  MEASUREMENT  IS  MADE, 

-.  ITS  NUMBER  APPEARS  (1-7) 
80  REM  UNUSED  PA  LINES  SHOULD  BE  OPEN  -. 

-.CIRCUITS 
200  PRINT-fi" 


February,  1982.  Issue  2t 


COMPUTEI 


165 


205  INPUT  "^NUMBER  OF  RUNS^j-NR 
210  P0RJ=1T0NR 
215  SYS826 
220  FOR  1=0TO6 

225  REM  THE  NEXT  STATEMENT  CALCULATES  -. 

-.THE  TIMES 

226  REM  THE  MEMORY  LOCATIONS  FOR  THE  -. 

-.TIMES  ARE  (995,1002,1009)  (996, 
-.1003,1010)  , 

227  REM  CONTINUING  UP  TO  (1001,1008, 

-.1015) 

228  REM  EACH  TIMING  CYCLE  TAKES  43  -. 

-iMACHINE  LANGUAGE  STEPS  OR  43  -. 

-^MICROSECONDS 
230  T(I,J)=43*(PEEK(995+I)+PEEK(1002+I)* 

-.256+PEEK  (1009+1)  *256*256)/1000000 
240  REM  THE  NEXT  STATEMENT  ROUNDS  OFF  -. 

-iTHE  TIMES  TO  1/10000  S 
250  T(I,J)=INT(T(I,J)*10000)/10000 
260  PRINT  T(I,J) , 
270  NEXT: PRINT: PRINT: NEXT 
280  REM  CALCULATE  THE  AVERAGE  TIMES 
290  PRINT "AVERAGE  TIMES" 
300  FOR  I=0TO6:TM(I)=0:FOR  J=1T0NR 
310  TM(I)=TM(I)+T(I,J) 
320  AV(I)=TM(I)/NR 
330  AV(I)=INT(AV(I)*10000)/10000 
340  NEXT: NEXT 

350  FOR  I=0TO6:PRINTAV(I) ,:NEXT:PRINT 
400  GOTO  205 


COMPUTEi's  Listing  Conventions 

Many  programs  which  are  listed  in  COMPUTE!  use 
cursor  control  keys,  color  keys,  and  so  forth.  We  have 
established  a  listing  convention  which  we  believe 
eases  the  task  of  typing  programs  in  accurately. 

PET/CBM/VIC  Conventions 

Generally,  PET/CBM/VIC  programs  will  contain 
bracketed  words  for  any  special  characters:  [DOWN] 
means  the  cursor-down  key;  [3  DOWN]  means  type 
the  cursor-down  key  three  times. 

If  a  program  line  runs  over  onto  the  next  line 
down,  the  -symbol  indicates  where  the  line  broke 
(in  case  the  number  of  spaces  is  unclear  between 
quotes).  An  underline  means  thai  that  key  is  shifted. 

8032/Fat  40  Conventions 


All  Commodore  Machines 


SET  WINDOW  TOP 

(SET  TOPI 

SET  WINDOW  BOTTOM 

IBET  BOTl 

SCROLL  UP 

[SCR  DPI 

SCHOLL  DOWN 

[SCR  DOWN) 

INSERT  LINE 

[INST  LINE! 

DELETE  LINE 

[DEL  LINEI 

ERASE  TO  BEGINKING 

[ERASE  BEG] 

EHASE  TO  EWD 

[ERASE  END] 

TOSGLE  TAB 

[TGL  TAB) 

TAB 

, 

[TABI 

ESCAPE  KEY 

(ESCI 

CLEAR  SCREEN 

[CLEAR] 

HOME  CURSOR 

(HOME) 

CURSOR  UP 

[UP] 

CURSOR  DOWN 

[DOWN] 

CURSOR  RIGKT 

[RIGHT] 

CURSOR  LEFT 

[LEFT] 

INSERT  CHARACTER 

[INST] 

DELETE  CHARACTER 

[DEL] 

REVERSE  FIELD 

ON 

[RVS] 

REVERSE  FIELD 

OFF 

[OFF] 

166 


COMPUTEI 


Febojary,  1982,  Issue  21 


Review: 


Screen  Pro 

Edward  K  Grossman,  PhD, 
Logan,  UT 


As  a  behavioral  scientist  with  both  teaching  and 
research  responsibilities,  I  am  always  looking  for 
ways  to  save  time.  Yet,  so  many  of  the  applications 
touted  by  those  in  the  computer  field  could  be 
more  quickly  accomplished  with  a  pencil  and  a 
stack  of  3x5  cards.  However,  Screen  Pro  from 
Kansas  City  Computers,  Inc.  has  saved  me  time, 
and,  in  this  article,  I  will  describe  some  of  the  fea- 
tures of  this  program,  and  how  I  applied  it. 

My  home  system  consists  of  a  CBM  8032  com- 
puter, a  CBM  8050  disk  drive,  and  an  Epson  MX-80 
printer. 

The  data  from  my  behavioral  experiments 
(and  many  others)  are  expressed  in  a  relative  fre- 
quency distribution:  10%  of  the  subjects  exhibited 
behavior  X,  20%  exhibited  behavior  Y,  etc.  Typi- 
cally, these  data  are  represented  in  tabular  form. 
When  you  have  multiple  experimental  conditions 
and,  thus,  many  tables,  it  is  difficult  to  see  trends 
or  changes  in  the  data.  So,  a  bar  graph,  or  histogram 
(see  Figure  I)  is  often  used  instead.  It  is  much 
easier  to  visually  scan  a  series  of  histograms  and 
detect  changes  in  the  data  than  with  many  tables. 
But  how  could  I  convert  my  frequency  data  into  a 
histogram  quickly  and  simply  and  have  it  printed 
out  on  my  MX-80?  That  is  where  Screen  Pro  came 
to  the  rescue. 

Screen  Pro,  written  in  BASIC  and  machine 
language,  allows  you  to  create  text  or  graphics  on 
the  screen,  and  then  prints  out  what  was  on  the 
screen.  Also,  it  can  save  the  information  as  a  screen 
file  on  disk;  each  screen  file  occupies  eight  blocks 
on  disk.  Once  the  screen  file  is  on  disk  it  can  be 
recalled  and  edited  as  you  see  fit.  I  have  found  the 
editing  functions  adequate  for  my  purposes.  These 
functions  for  the  CBM  8032  (in  addition  to  the 
normal  editing  functions)  include: 

Set  upp>er  case 

Set  lower  case 

Scroll  screen  down 

Expand  Screen 

Compress  Screen 

Insert  a  line 

Delete  a  line 

Erase  to  end  of  line 

Erase  from  beginning  of  line 

Enbable/disable  quote  mode  (for  graphics) 

Send  screen  contents  to  printer  (normal  mode) 

Send  screen  contents  to  printer  (squeezed) 


Abort  current  file  on  screen,  retaining  original  if 

editing 
Normal  exit  of  editor 

Screen  Pro  has  some  other  nice  features.  When 
editing  a  screen  file,  it  uses  a  temporary  .scratch 
space  on  disk,  so  you  can  either  save  or  scrap  the 
screen  file  you  are  currently  editing,  and  at  the 
same  time  keep  a  backup  of  the  original  screen  file 
as  it  was  before  you  started  editing.  Also  the  author 
of  Screen  Pro,  Keith  Peterson,  has  gone  to  some 
trouble  to  explain  how,  if  you  understand  BASIC 
programming,  to  create  your  own  programs  using 
his  machine  language  subroutine.  Being  an  amateur 
programmer,  I  don't  fully  grasp  his  instructions, 
but  perhaps  you  can.  He  has  taken  a  very  refreshing 
approach  by  not  protecting  any  of  the  software,  so 
you  can  examine  it  and  change  it  to  your  specifica- 
tions. Essentially,  if  you  write  your  own  program, 
you  can  create  hundreds  of  screen  files  with  the 
ability  to  branch  from  one  file  to  many  others  in 
the  series.  Mr.  Peterson  has  provided  the  would-be 
programmer  with  several  demonstrations  of  how 
to  do  this.  In  essence,  then,  you  could  create  a  sort 
of  information  management  program,  although  it 
would  lack  many  features  of  a  typical  data  base 
management  program,  such  as  Create-A-Base,  or 
Commodore's  Ozz. 

There  are  a  couple  of  things  I  have  not  been 
happy  with,  however.  First,  the  documentation, 
while  better  than  some  I  have  seen,  is  written  by 
the  programmer  for  people  who  already  have 
some  knowledge  of  programming  and  computers. 
My  impression  of  many  in  the  micro  industry  is 
that  they  consider  quality  documentation  unim- 
portant, yet  there  are  people  around  who  are 
trained  to  explain  computerese  in  everyday  lan- 
guage; usually,  however,  they  are  not  programmers! 

The  second  problem  concerns  the  Epson 
printer.  Screen  Pro  was  designed  only  for  the 
Commodore  2022  and  4022  printers,  and  the 
author  states  so  and  shows  you  the  section  of  the 
program  where  you  can  write  a  routine  for  your 
own  printer.  Without  such  a  routine,  however, 
when  text  is  placed  on  the  screen  fhe  Epson  prints 
upper  case  characters  as  Epson  graphic  characters; 
lower  case  characters  are  printed  correctly,  but 
capitahzed.  This  is  a  serious  problem  for  me,  and  I 
guess  the  only  thing  to  do  is  to  write  a  routine  to 
handle  the  case  conversion. 

The  Epson  also  presents  a  problem  for  graphics 
applications,  such  as  mine,  because  it  lacks  the 
Commodore  graphics  characters.  However,  I  did 
figure  out  a  simple  solution  for  my  histogram 
application.  When  one  of  the  Commodore  graphics 
characters  is  placed  on  the  screen  and  printed  on 
the  Epson,  it  comes  out  as  one  of  the  Epson  block- 
type  graphics  characters.  So  I  placed  all  of  the 


OLD   PET  OWNERS   NEVER   DIE 

JX   THEY  JUST  CALL  ON   US!     H. 

Our  innovative  line  of  hardware  products  protect  the  investment  in 
your  original  version  4K/8K  PET  by  extending  its  life  and  usefulness. 
Our  iohv/ire  works  on  most  PET/C8Ms.  -o^ 

•  2114TO-6550   RAM  ADAPTER  ^^^"^^"^ 

Replaces  up  lo  eight  6550  RAMs  with  low  cost,  reliable  21 14s -one  at  a 
lime.  Use  two  units  for  total  6550  replacement.  Never  worry  about 
RAM  availability  again! 

PHeOOl  Bare  Board  S1 1,95 

PHK-OOIS  Full  Kit  (Mo21Usl        S17.95 

PH001S  Assembled  INo  21 14s)   $34,95 

(S2.50  postage/handling  per  order! 

•  4K  MEMORY  EXPANSION 

Installs  essily  internally.  Uses  eight  2114Ls.  Write  protect  provisions. 
Second  expansion  needs  external  +5V  power.  "Soft-ROM"  applica- 
tions. Bigger  programs! 

PHB002  Bare  Board  SI  6,00 

PHK002  Full  Kit  (No2114sl        S29.00 

PH002S  Assembled  (No  21 14s)   542,00 

PH-002  Assembled  with  2114s   589,00 

(S3. 00  postage/handling  per  order) 

•  "REAL  WORLD"  SOFTWARE 

For  most  PET/CBMs.  Word  Processor.  Mailing  List,  Catalog,  Satellite 
Tracker.  Morse  Code  Keyer,  Frequency  Counter.  Professional  results 
at  low  cost  I 

SI  7    S25 

Wftte  for  Free  Cala}f>f) 

PROMPT  SHIPfJIENTI 
California  Residents,  add  6'n  Tax 


SATISFACTION  GUAaANTEED 
Foreign  Stiinping  Higher 


OPTIMIZED   DATA  SYSTEMS 

Oupt   C.    PO,  Box  595      Plairentia.  [:alilornia32G7D 


DEALER    IMQUIHIES    INVITED      ^jj^ 
PET/CBM  Trademark  of  Commodore  BuEiness  Machines 


VIC  Software 

Vic  20  memory  expansion  —  you  get  8k  and 

1 76x  1 76  graphics  for  only  $59.95 

12VDC  Power  Converter —  use  the  Vic  in  your  car, 

camper,  etc $49.95 

Brass  Pounder  —  learn  morse  code  the  new  and 

exciting  way! $5.95 

Music  Machine  —  play  songs  from  sheet  music 
using  the  Vic's  sound $5.95 

Vic  Monitor  —  lets  you  do  machine  code  program- 
ming on  the  Vic!   $6.95 

Talldng  Vic  —  lets  the  Vic  speak  the  numbers  one 

to  ten!     $8.95 

Joysticks $24.95,         Schematics $7.95 

******************** 

TRS-80  Robot  Simulator  program  $7.95 

Add  $2,50  per  order  to  cover 
shipping  and  handling. 


micro  systems  b^ 

i=>E:-n-E:3D 

harctoarg  tuith  a  so-ft  touch 


P.O.   Box  21851, 
Mi  \vuM—>    Wisconsin  53221 


Commodore  graphics  characters,  avaitahle  from 
the  8032  keyboard,  on  the  screen  and  then  printed 

Figure  1.  Histogram  produced  by  Screen  Pro 


40 


•.(.> 


P 

E 

R 

C  20 

E 

N 

T 


10 


(J 


BEHAVIORAL  DATA:  GROUP  1  7/ 12./ SI 


H  BPmOttEBIimi  Kli  E'J  IP  WBWffl  3  Bi  jPfl  ITM I B6  \  BIBBilJPffl  CBJB  STTBiB  I  flilHimfifiinmtffff  ff^^^i^^^^^^^  fWMBIffli  P  ^S^WJ-WWIti 


I 
A 


E 


C    D    E 

F    C-i 

CATEBORY  OF 

BEHAVIOR 

H 


these  on  the  Epson.  From  the  tnish-mash  that 
resulted  I  was  able  to  pick  out  suitable  symbols  to 

create  the  simple  vertical  and 
horizontal  lines  that  are  required 
in  constructing  a  hislogiam.  For 
example,  the  ietler  "["  on  tlie  .S().H2 
keyboard  produces  a  vertical  bar 
on  the  Epson  when  the  8032  is  in 
the  graphics  mode.  This  method 
produces  ttinny  pictiues  on  the 
8032  screen,  but  this  has  proved  to 
be  only  a  minor  annovaiue  since 
lliere  is  enough  resemblance  to  the 
final  product  produced  bv  the 
Epson. 

Overall,  Screen  Pio  is  a  wel- 
come addition  to  the  software 
collection  for  the  Connnodore 
systems,  and  at  $39.95  is  ver\  rea- 
sonably priced.  It  is  fast,  relatively 
easv  to  use,  and  fills  a  \crv  sjjecific 
need  that  I  have  had  ioi  some 
lime.  Now,  ii  someone  would  just 
come  up  with  a  similar  package 
which  would  allow  the  user  to 
produce  a  graph  rapid Iv,  such  as  a 
sine  wave,  on  the  screen  and  ha\e 
the  image  come  out  on  an  X-Y  plot- 
ter, such  as  the  MIPLOT!  C 


H 


168 


COMPUTEl 


Febnjocv,  1982.  Issue  21 


VIC-20  Update 


Extended 
VIC-20  Input 
Devices: 
Paddles  And 
The  Keyboard 

Mike  Bossman  and  Salomon  Ledermon 
Woodside,  NY 


The  VIC-20  has  some  remarkable  capabilities  not 
documented  by  the  manual.  Specifically,  you  can 
use  game  paddles  with  the  VIC-20  as  well  as  making 
better  use  of  the  keyboaid. 

The  Paddles 

Have  you  ever  seen  the  little  nine  pin  port  right 
next  to  the  power  switch?  This  port  can  be  used 
with  paddles.  To  make  lite  easy,  it  can  be  used  with 
the  widely  available  Atari  game  paddles  (which  are 
used  with  their  video  games  and  home  computers). 
Ju.st  plug  in  a  pair,  and  we'll  be  ready  (o  begin. 
These  paddles  are  linear  devices.  What  is  meant  by 
this  is  that  the  paddle  is  a  much  more  sensitive 
device  than  a  directional  joystick,  which  can  only 
point  in  eight  or  so  directions.  You  may  think  the 
paddle  is  not  even  as  good,  pointing  only  left  or 
right.  This  is  not  true. 

How  It  Works 

What  the  paddle  actually  does  is  isolate  one  position 
out  of  the  256  possil^le  ones.  When  the  paddle  is 
turned  to  the  far  right,  this  value  is  0.  Every  lime 
you  turn  the  paddle  in  either  direction  the  number 
is  increased  or  decreased  accordingly.  The  VTC-20 
allows  us  to  use  up  to  two  paddles.  For  each  of 
them,  we  can  obtain  a  position  value.  These  values 
are  in  memory  locations  S900S  lor  the  tlrst  paddle, 
and  $9009  for  the  second.  In  decimal  these  are 
36872  and  36873,  respectively  (A  niunber  preceded 
by  a  "$"  signifies  that  it  is  hexadecimal). 


How  To  Do  It 

Shown  below  is  a  quick  one  liner  that  prints  out  the 
values  of  botli  the  j^addle  registers. 

10  PRINT  PEEK(36872);PEEK(36873):  GOTO  10 

Try  typing  and  running  this  program  now. 
You  shotild  see  a  continuotis  stream  of  two  nimibers 
flying  by.  Fiddle  with  the  paddles.  The  numbers 
should  change  accordinglv.  The  more  you  turn  a 
paddle  left,  the  higher  the  number  goes  (the  oppo- 
site for  right,  of  coin'.se). 

Next,  we'll  try  something  a  little  more  compli- 
cated and  which  might  be  more  applicable.  Program 
I  will  move  a  little  ball  across  the  screen  according 
to  vour  paddle  position.  It  will  also  slide  a  nuisical 
tone  up  and  dow  n  a',  the  same  time.  Here  are  some 
notes  which  will  explain  .some  of  the  program.  The 
first  two  lines  are  Just  set-up,  setting  volume  for  the 
tone  generator  and  clearing  the  screen.  Line  20 
gets  the  initial  paddle  position.  The  next  line,  30, 
determines  the  position  of  the  ball  on  the  .screen. 
The  ball  can  move  from  the  far  left  edge  of  the 
.screen  (7900)  to  the  far  right  (7921).  Logically,  the 
thing  to  do  is  to  move  the  ball  a  little  bit  left  when- 
ever the  paddle  value  goes  a  little  bit  up  (turning 
towards  the  left).  The  problem  is  that  the  jjaddle  is 
much  more  accinate  than  one  line  of  the  screen. 

While  the  paddle  has  256  possible  calibrations, 
one  line  of  the  screen  is  only  22  characters  long. 
What  we  do  is  to  make  a  proportion  of  paddle 
calibrations  per  .screen  chaiacter,  in  this  case  1  1.64 
(obtained  by  dividing  256  by  22).  Now  we  have  the 
position  of  the  ball  on  the  screen.  Line  40  does 
almost  the  same  thing,  finding  an  appropriate  tone 
for  the  paddle  position.  We  have  128  possible 
tones,  .so  the  proportion  of  the  calibrations  to  tones 
is  only  2  to  1 .  The  next  three  lines  just  jDut  the  fiall 
on  the  screen,  tack  a  color  onto  it,  and  turn  on  the 
proper  tone.  Only  the  clean-up  work  remains  to  be 
done  now:  a  small  delay  loop  so  the  ball  doesn't 
nicker  badly,  and  erasing  the  ball  and  the  color. 
After  tliis,  we  get  a  new  paddle  reading  and  start 
all  over  again. 

If  you  have  riui  this  little  demonstration,  the 
advantage  of  a  linear  device  should  be  obvious. 
You  can  just  whip  the  paddle  back  and  forth  without 
having  to  worry  whether  the  computer  is  fast 
enough  to  keep  up  with  you,  and  the  ball  will  follow 
because  the  paddles  determine  an  absolute  position, 
rather  than  just  a  direction.  This  could  be  very 


TAPE  CASSETTE  GAMES 


*    GL0B8LER 

The  Conqueror  Worm  gobbles  globs  under  your 
control. 


HARDWTARE  "^'^ 


THE 


$24.95 


THE  ALIEN  $24.95 

Fast  worf^  with  srffatable  alien  traps  makes 
THE  ALIEN  an  exciting  game. 

AMOK  $16,95 

The  Halls  ol  AMOK  are  populated  by  crazed  killer 
robots  benl  on  your  destruction! 

ALIEN  BLITZ  S24.9S 

Split  second  reactions  a1  the  superhuman  9th  level 
of  ALIEN  BLITZ  wifl  find  how  good  you  really  gre. 

FABULOUS  FOUR  I  $59.95 

Four  ol  our  most  popular  and  exciting  game 

cassettes  in  one  package. 

STAR  WARS       Blast  that  tie  fighter! 

DRAGON  MAZE        Lurking  man-eating  dragon. 

LASER  WAR        Blast  away  space  debris  and  aliens. 

INVADER  FALL    Alien  paratroopers' descend  from  space. 


CARTRIDGE  PROGRAMS 


IS! 


EDUCATIONAL  TAPES 


•  SUPER  HANGMAN  $1B.9S 

Superior  version  of  the  popular  spelling  game. 

•  SKYMATH  S14.95 

Decimal  addition  and  subtraction  with  sjper  graptiics. 


UMI  RS23Z  COMMUNICATIONS  INTERFACE        $49.95 
Our  HS232  Communicator  Interface  enables  the 
VIC-20  la  talk  to  most  RS232  devices 

UMI  3K  RAM  MEMORY  EXPANDER  $79.95 

Our  3K  Ram  Memory  Expander  adds  two  ROIvl 

slots  and  3K  of  RAIvl  memory  to  the  V(C-20 

UMI  8K  RAM  CARTRIDGE  $89.95 

Our  6K  RAM  Cartridge  adds  BK  ol  user  memory  to 
the  VIC-20 


DEALER  INQUIRIES  INVITED 

VISA  AND  MASTERCARD  ACCEPTED 


United  MIcroware  Industries,  Inc. 

3431  H  Pomona  Blvd. 
Ponnona.  CA.  91768 

Please  send  me  my  FREE  CATALOG. 


NAME. 


ADDRESS. 


I 


STATE. 
CITY 


ZIP„ 


FOR  ADDITIONAL  PRODUCTS  SEMD  FOR  FREE  CATALOG  * 


''Probably  the  best-documented 

programs  I've  seen  for  the  PET/CBM." 

-  Robert  Baker,  September  1981  KILOBAUD 


Debugging  tools  for  PET  and  VIC 


HESBAL  :  Assembler/editor  for  PET  and  VIC 

HESCOUNT, 

HESLISTER  : 

HESPLOT  :  Hi-res  graphics  subroutines  for  VIC 

HESCAT  :  Disk  cataloging  system  for  PET 

HESCOM  :  Exchange  data,  programs  between  PET  and  VIC 


V 

I 

c 


Human  Engineered  SoFtujore 
3748  Ingleujood  Blvd.  Room  1 1 
Los    flngeles,    CQJiforniQ    90066 


PET,  CBM,  anij  VIC  are  trademarks  of  Commodore 


(213)  398-7259 
24  HOURS 

SOURCE  ID: 
TCK308 


170 


COMPUTEI 


Februory.  1982,  Issue  21 


convenient  in  games  where  speed  is  at  a  premium. 
In  the  near  future,  I'm  sure  we'll  see  many  clever 
and  innovative  ways  to  use  the  paddles. 

The  Keyboard 

There  are  two  types  of  keyboards:  ASCII,  or  hard- 
ware kevboards,  and  polled,  or  software  keyboards. 
The  ASCII  keyboard  is  a  separate  device  from  the 
computer  which  just  sends  oiu  the  ASCII  value  of 
the  key  being  pressed.  The  polled  keyboard  is  a 
little  more  subtle.  A  polled  keyboard  is  split  up  into 
sections  of  eight  keys,  called  rows.  Generally,  a 
polled  kevboard  has  eight  rows.  The  computer  can 
lest  one  row  at  a  time,  and  detect  which  key  along 
with  row  is  being  pressed,  if  any.  The  polled  key- 
board can  also  detect  any  number  of  key  combina- 
tions along  any  particular  row.  Consequently, 
polled  keyboards  need  a  fair  amount  of  system 
software  to  do  what  comes  naturally  to  an  ASCII 
keyboard. 

Most  microcomputers  today,  the  VIC-20  in- 
cluded, use  polled  keyboards  because  of  the  added 
flexibility  and  lower  price.  Unfortunately,  the  VIC- 
20  does  not  let  us  normally  get  at  some  of  those 
nice  features.  To  us,  from  BASIC,  it  seems  just  like 
an  ASCII  keyboard.  We  can  only  obtain  one  char- 
acter at  a  time  using  the  GET  command.  If  two 
keys  are  being  pressed  down  at  once,  the  GET 
command  will  almost  randomly  choose  one  of 
those  two  as  the  value  that  gets  sent  back  to  the 
user.  If  you  wanted  to  do  a  two  player  game  or  a 
game  requiring  simultaneous  depressing  of  more 
than  one  key.  life  would  be  very  difficult.  But 
here's  how  it  can  be  done. 

Polled  Keyboard  Encoding 

The  VIC-20  polled  keyboard  has  eight  rows  of 
eight  keys  each.  Each  row  can  be  selected  by  a 
particular  value.  The  eight  values  for  the  eight 
rows  are  all  shown  in  Table  1.  l~hese  values  are  by 
no  means  arbitrary.  If  you  examine  the  table,  you 
can  see  that  the  values  are  given  in  binary,  as  well 
as  decimal  and  hexadecimal.  Row  values  were 
made  by  turning  on  all  the  bits  in  the  byte,  then 
turning  off  the  bit  which  the  row  represents.  For 
example,  the  fust  row  has  all  the  bits  on  (set  to  1) 
except  for  the  one  on  the  far  left,  which  is  off  (or 
0).  Then  this  binary  number  is  simply  used  in  its 
hexadecimal  or  decimal  form  to  represent  the  row. 
Each  key  along  the  row  is  handled  in  exactly  the 
same  manner  as  the  rows  (for  example,  the  value 
representing  the  first  row  would  be  the  same  as  the 
one  representing  the  first  key  in  that  row).  This  is  a 
little  confusing,  but  it  works  out  well  in  the  end. 
Table  2  is  the  keyboard  encoding  matrix.  It  shows 
all  the  row  values  going  down,  and  all  the  keys 
along  each  row,  and  their  value.  For  instance,  the 
keys  on  row  223  are  F3,  =  ,:,K,H,F,S,  and  Com- 


modore. The  value  of  the  Commodore  key  would 
be  254. 

Implementing  Keyboard  Theory 

Using  an  individual  row  on  the  keyboard  is  ac- 
complished as  follows.  You  select  a  row  by  POKEing 
its  value  into  a  memory  location  we'll  call  the  row 
select  register.  Then  you  can  get  the  information 
as  to  which  key(s)  is  hit  by  PEEKing  another  loca- 
tion, the  keyboard  data  register.  The  row  select 
register  is  located  ai  $9120  (37152),  and  the  data 
register  at  $9121  (37153). 

Things  don't  work  out  as  easily  as  doing  just 
one  POKE,  then  another  PEEK.  The  problem,  in 
this  case,  is  the  RUN  STOP  ROUTINE,  This  part 
of  BASIC  is  the  one  that  checks  if  you  hit  this  key 
during  the  execution  of  a  program.  If  you  have, 
the  program  stops.  What  the  routine  does  is,  after 
every  command  executed,  it  puts  a  247  in  the  row 
select  register  (the  row  which  has  the  RUN  STOP 
key)  and  checks  the  data  register  for  a  value  of  254 
(eighth  key  over).  If  the  data  register  is  254,  then 
you  have  hit  the  RUN  STOP  key,  and  program 
execution  terminates. 

What  this  means  for  us  is  that,  even  after  we 
have  just  chosen  a  row  by  POKEing  a  value  into 
the  select  register,  the  RUN  STOP  routine  will 
change  it  right  back  to  a  247,  Very  bad  news  indeed, 
unless  you  only  want  to  use  row  247.  Not  only  that, 
but  you  can't  use  the  RUN  STOP  key  for  your  own 
purposes.  There  is  a  way  to  disable  the  RUN  STOP 
key.  POKEing  808  wilh'l  14  turns  off  the  RUN 
STOP  key,  and  POKEing  808  with  112  turns  it 
back  on  again.  This  does  not  solve  our  problem. 
Turning  off  the  RUN  STOP  key  will  prevent  it 
from  ending  program  execution  when  that  key  is 
hit,  but  the  routine  still  stores  that  247  in  the  select 
register.  However,  when  we  clear  up  the  major 
problem,  turning  off  the  RUN  STOP  key  will  allow 
us  to  use  that  key  in  our  programs. 

A  Solution 

Tlie  way  to  solve  this  problem  is  by  noticing  that 
this  routine  operates  after  every  BASIC  command. 
WMiat  must  be  done  is  to  POKE  in  oiu"  select  value, 
then  PEEK  the  data  register,  all  in  the  time  of  le.ss 
than  one  BASIC  command.  Machine  language  is 
the  answer.  The  VIC-20  can  use  machine  language 
even  though  it  has  no  direct  facilities  for  entering  or 
saving  it,  [See  Jim  Butterfield's  Tinymon  in  COMPUTEI 
#20,  pg.  176  which  provides  a  monitor  for  \'l(]  —  Ed.] 
We  are  going  to  use  a  very  short  machine  language 
routine  that  simply  puts  our  row  into  the  select 
register,  looks  at  the  data  register,  then  puts  the 
contents  oi'  the  data  register  into  a  RAM  location 
that  the  BASIC  program  can  look  into.  Program  2 
shows  just  such  a  machine  language  program.  Not 
mtich  to  it  at  all,  just  five  lines  OF  CODE.  The  first 


ASERT  yourself  ...with  CFI's  new  Database  Retrieval  System 


WHO  CAN  USE  ASERT? 


libraries 

personnel  departments 

dating  services 


schools 

employment  agencies 

accountants 


ANY  BUSINESS  THAT  KEEPS  RECORDS  CAN  USE  ASERT  TO: 


•  Create  up  to  21  fields  per  record 

•  Restructure  fields  at  any  time 

•  Sort  on  any  field  at  any  time 

•  Use  FREE-TEXT  area  for  comments 

•  Create  up  to  90  searciiwords 


•  Search  &  retrieve  on  any  combination  of  90  searchwords 

•  Search  with  MUST  HAVE,  MAY  NOT  HAVE  and  OPTIONAL  operators 

•  Print  out  liardcopy  including  labels 

•  Output  to  any  word  processor 

•  Compile  summary  statistics 


•  Maintain  1900  records  per  disk  with  "virtual"  5K  record  length 

ASERT  —  Aid  for  Search  &  Retrieval  of  Text  —  $495  complete 

For  the  8032  CBM  and  8050  disk  drive  —  Commodore  Approved  Software 


OTHER  CFI  SOFTWARE 

Federal  Income  Tax  Preparation  System* 

Personal  Tax  Calculator* 

Emergency  Control  Program* 

VIC  Animation  Tutorial 

'Distributed  for  CFI  under  the  Commodore  label 

CFI . . .  Computer  Solutions,  201  West  92  St.,  New  York,  NY  10025 


ALL  CFI  SOFTWARE  AVAILABLE 

from  your  local  Commodore  dealer 
or  direct  from  CFI 


instruction  loads  in  the  row  value,  in  this  case  a  |7F 
(127).  The  second  stores  it  in  the  select  register. 
The  next  picks  up  a  value  from  the  data  register. 
The  last  two  just  store  that  value  in  accessible  RAM 
(at  $1DFF,  or  7679),  then  returns  back  to  BASIC. 

This  roudne  will  do  the  trick  because  it  does 
what  we  want  in  less  than  one  BASIC  command. 
Even  though  the  VIC-20  has  no  real  method  for 
entering  machine  code  data,  it  can  be  done  anyway. 
You  just  take  the  machine  code  values,  convert 
them  into  decimal,  and  stick  them  into  a  BASIC 
DATA  statement.  Then  just  add  a  line  of  BASIC 
that  reads  the  values  and  puts  them  in  the  correct 
place.  In  Program  3,  we  have  a  complete  deomon- 
stration.  Lines  30  and  40  are  the  aforementioned 
DATA  statement  and  reader/POKER.  Line  5  turns 
offthe  RUN  STOP. 

Lines  10  and  20  need  a  Httle  bit  of  explanation. 

Table  I. 

127-7F-0111  1111 
191  -BF-  1011  nil 
223-DF-  1101  nil 
239-EF-  11101111 
247 -F7-  nil  0111 
251  -  FB-  nil  1011 
253-FD.  nil  1101 
254-FE-  nil  1110 


We  are  going  to  put  the  machine  language  routine 
into  the  top  of  available  memory.  Unforliniately, 
BASIC  also  wants  to  u.se  this  space.  These  lines  tell 
BASIC  not  to  use  the  highest  21  bytes  of  RAM. 
Locations  5 1  and  52,  as  well  as  55  and  56  contain 
the  top  of  BASIC  RAM  in  low,  high  format.  Low, 
high  format  is  when  the  low  I)yte  of  an  address 


Table  2:  Keyboard  Matrix  Table 


eUi  Row  (PEEK)  — 
.  Keys 

127  191 


osi 


223 


239 


247 


251 


253 


254 


F7 

Home 

— 

0 

8 

6 

4 

2 

S 

F5 

(a 

O 

U 

T 

E 

Q 

F3 

= 

K 

H 

F 

S 

COMMO 
DORE 

CM 

FI 

RIGHT 
SHIFT 

M 

B 

c 

■/. 

.SPACE 

CURSOR 

/ 

1 

N 

V 

X 

LEfT 
SHIFT 

RUN 
STOP 

in 

CURSOR 

: 

L 

1 

G 

D 

A 

CTRL 

RETURV 

* 

P 

I 

y 

R 

W 

DEL 

£ 

+ 

9 

7 

5 

3 

1 

172 


COMPUTfl 


Febmatv,1P82.  issue  21 


precedes  the  high  byte  of  it.  To  calculate  an  address 
from  this  format,  just  use  this  formula;  (256*high 
bvte  +  low  byte  =  address).  Normally  the  low  and 
high  byte  for  the  lop  of  BASIC  are  00  and  30, 
respectively  (yielding  an  address  of  7680).  These 
we  change  to  235  and  29,  giving  an  address  of 
7659,  Line  50  goes  to  our  machine  code  routine, 
line  60  prints  the  result,  and  70  repeats  the  process. 
Trv  it  now.  I'll  wait.  If  you  press  one  of  the  keys 
from  the  first  row,  the  appropriate  value  will  be 
printed.  No  key  is  indicated  by  its  printing  255.  As 
it  is  now,  this  program  will  print  first  row  values. 
To  change  the  row.  just  change  the  second  item  of 
data  in  line  30.  I  used  this  program,  incidentally,  to 
make  the  keyboard  matrix  chart. 

All  this  may  seem  pretty  useless  to  you  at  this 
point.  Our  next  program  will  do  something  that 
cannot  be  clone  with  regular  old  BASIC.  Program 

4  will  play  a  tone  of  varying  pitch  depending  on 
which  of  two  keys  you  hit.  Doesn't  sound  too  ex- 
citing, but  it  will  play  the  two  tones  one  after  the 
other  even  if  both  keys  are  pressed  at  the  same 
time.  This  is  the  basis  of  two-player  games,  where 
the  computer  can  fairly  give  one  turn  to  each  player. 
All  the  material  in  this  program  should  be  old  hat 
to  you  now,  so  1  won't  bother  to  explain  it. 

Hopefullv  you've  learned  to  use  your  paddles 
and  kevboard  now.  Put  them  to  good  use! 

Program  1. 

1    REM   Listing    1 

5  P0KE3687a,3 

10  PRINT" CShift/Home:" 

20  X=PEEK (36872) 

30  L=7921-INT<X/11.64> 

40  T=255-INT(X/2) : IF  T=255  THEN  T= 

254 
50  P0KEL,81 
55  POKEL+30720,2 
60  P0KE36874,T 
70  FOR  K=l  TO  lOiNEXT 
BO  POKEL , 32 : P0KEL+30720 , 1 
90  B0TD20 
OK 


Program  2. 

A9  7F  LDA  #*7F 

BD  20  91  STA  *9i20 

AD  21  91  LDA  «9121 

SD  FF  ID  STA  «1DFF 


60 


RTS 


Program  3. 

5    POKE    808, 114 

10  POKE  51, 235: POKE  52,29 

20  POKE  55, 235: POKE  56,29 

30  DATA  169,127,141,32,145,173,33, 


145, 141,255,29,96 
40  FOR  K=l  TO  12: READ  X s POKE  7659 

+K,X:NEXT  K 
50  SYS  7660 
60  PRINT  PEEK (7679) s 
70  G0T050 
OK      ^^^^_ 

Program  4. 

1    REM   Listing    4 

10  P0KE80B, 114:P0KE51,235:P0KE52,29 

: P0KE55, 235: P0KE56, 29: P0KE36B7a, 

3 
20  DATA169, 127, 141,32, 145, 173,33, 

145, 141,255,29,96 
30  FOR  K=l  TO  12: READ  X:P0KE  7659 

4-K,XsNEXT  K 
40  POKE  7661, 127: SYS  7660 
50  IF  PEEK (7679) =254THENP0KE36874, 

200 : FORK= 1 T0500 : NEXTK i P0KE36e74 , 

O 
60  P0KE7661, 191:SYS  7660 
70  IF  PEEK (7679) =127THENPDKE36S75, 

200: F0RK=1T0500: NEXTK: P0KE36875, 

0 
80    BDTO    40 
OK  © 


$48 


MALA 

Educational  Programs 

II  ."j^    /  /  I  For  Your  Pet  For  Only 

For  8  Issue  Subscriptions Z,^* 

Each  "MALA'  comes  to  you  on    '  ^ 
cassette  with  4  brand  new  pro- 
grams to  load  ond  run  on  your 
Pet.  y 

svsTEfns.  mc. 

P.n.  BDH  325 
3]  Sfl5-QII3 


fp 


GAMES  FOR  YOUR  VIC 


VIC  TREK  •HANGMAN 

TANK  •  YAHTZEE 

DAMSEL 'NAB  PLUS 

AND  MANY  MORE 


*^$7.95 


Each 


FREE  Program  Summaries  available 


Februaiv,  1982.  Issue  21 


COMPUTEI 


173 


Timekeeping 

Keith  Schleiffer 
Annandale,  VA 

The  friendly  computer  guide  that  comes  in  the  box 
with  your  VIC  20  mentions  several  interesting 
features  that  the  casual  reader  can  easily  miss.  In 
my  most  recent  rereading,  I  discovered  the  time- 
keeping feature  of  the  VIC.  The  computer  can 
keep  real  clock  dme,  count  elapsed  time,  or  time 
controlled  pauses  dtning  program  exectition. 

The  clock  is  available  as  the  reserved  variables 
TI  and  TI$.  TI  actually  counts  time  passing.  TI$  is 
a  string  variable,  which  depicts  this  time  count  in 
HHMMSS  format  (hours,  minutes,  and  secoiids, 
without  any  punctuation)  on  a  twenty-four  hour 
clock. 

How  does  the  VIC  do  this  dmekeeping?  When 
the  computer  is  first  turned  on,  the  timekeeper 
initializes  at  000000  (midnight).  You  can  then  set  it 
to  act  as  a  clock  by  assigning  to  TI$  a  string  repre- 
senting the  correct  time.  For  instance,  if  I  initialize 
the  dmekeeper  as  a  clock  at  1 :29:30  in  the  after- 
noon, I  would  enter  the  statement: 

TI$  -  "132930" 

The  VIC  would  convert  this  to  48570  seconds  after 
midnight,  mtiltiply  by  sixty,  and  assign: 

TI  =  2914200 

and  continue  counting  from  there.  TI  is  counted 
in  one-sixtieth  second  intervals;  that  is,  when  TI 
has  increased  by  sixty,  one  second  has  passed.  The 
time  count  is  kept  in  memory  locations  1 60,  161, 
and  162. 

Once  you  have  set  the  correct  time,  you  can 
check  it  whenever  you  wish  by  entering: 

PRINT  TI$ 

and  the  VIC  will  display  the  time,  again  in 
HHMMSS  format.  I  like  to  set  TI$  to  keep  clock 
time,  and  check  it  occasionally,  so  my  wife  doesn't 
have  to  complain  about  getting  less  attention  than 
the  computer.  The  timekeeper  can  be  used  in 
programming  to  control  operations  at  scheduled 
times  during  the  day,  such  as  periodic  data- 
collection  from  an  experiment,  or  to  control  your 
lights  in  a  household  security  program. 

To  use  the  VIC  to  count  elapsed  time,  you 
cannot  start  and  stop  the  time  counter.  To  get 
aroimd  this  problem,  you  must  run  a  second  vari- 
able to  count  lime  in  parallel  with  TI,  then  stop 
counting  with  that  second  variable  when  the  timed 
period  is  over.  The  following  program  uses  the 
"hit  any  key"  concept  to  start  and  stop  timing: 


100  GET  A$  :  IF  A$  =  "  "  THEN  100 

110  TS  =  TI 

120  PRINT  "TIMING" 

130  TC  =  TI:GETA$:IFA$  =  ""THEN130 

140  TE  =  (INT((TC-TS)/ 6  +  0.5))/ 10 

150  GOSUB  400  :  PRINT  T$ 

160  END 

400  REM  CONVERTS  SECONDS  TO  HH:MM:SS.S 

FORMAT 
410  HI  =  INT(((TE  /60/60/24)  -  (INT(TE  /60/60/24))) 

*24) 
420  B1=STR$(H1) 
430  H$  =  MID$(B$,2,2) :  IF  HI  <  10  THEN  H$  =  "0" 

+  MID$(B$,2,!) 
440  T3  =  TE-(H1  *60*24) 

450  Ml  =  INT(((T3  /60/60)  -  (INT(T3  /60/60)))  *  60) 
460  B$  =  STR$(MI) 
470  M$  =  MID$(B$,2,2) :  IF  Ml  <  10  THEN  M$  =  "0" 

+  MID$(B$,2,1) 
480  T2  =  T3-(M1  *60) 
490  SI  =INT({(T2  /60)  -  (INT(TE/60)))  *  60) 
500  B$  =  STR$(S1) 
510  S$  =  MID$(B$,2,4):IFS1<10THENS$  =  "0" 

+  MID$(B$,2,3) 
520  T$  =  H$  +  ":"  +  M$  +  ":"  +  S$:  RETURN 

Line  130  converts  TE  to  the  elapsed  time  in  seconds 
and  rounds  off  to  the  nearest  tenth.  The  subroutine 
starting  at  line  400  will  convert  this  to  "clock"  dis- 
play, complete  with  colons  in  HH:MM:SS.S  format, 
down  to  tenths  of  seconds.  A  .simpler  approach 
would  use  TI$  by  assigning  to  it  the  elapsed  time 
value  and  immediately  printing  it: 

140  TE  =  TC-TS 

150  TI  =  TE  :  PRINT  TI$  :  END 

You  won't  want  to  use  this  method  if  vou  are  using 
TI  as  a  real  clock,  or  if  you're  relying  on  the  time- 
keeper to  track  more  than  one  period  at  once. 

You  can  use  the  timekeeper  for  the  scoreboard 
in  a  game,  either  by  displaying  stopwatch  time  or 
TI$,  to  show  time  passing,  or  by  calculating  time 
remaining  and  displaying  a  countdown  timer.  Tlie 
followmng  program  is  a  version  of  the  countdown 
timer. 

100  PL  =  5  :  REM  PERIOD  LENGTH  5  MINUTES 

no  PS  =  TI:  REM  PERIOD  STARTS  NOW 

120  PF=:PS-I-PL*60:  REM  PERIOD  FINISH  TIME 

130  TR  =  PF-TI:  REM  TIME  REMAINING 

140  GOSUB  400 

150  PRINT  "[clrl"  T$ 

160  IFT1<PFTHEN  130 

170  END 

400  REM  CONVERTS  SECONDS  TO  MM:SS 
FORMAT 

440  T3  =  INT(TR/60  +  0.5) 

450  Ml  =  1NT(((T3  /60/60)  -  (INT(T3  /60/60)))  *  60) 

460  B$  =  STR$(M1) 

470  M$  =  M1D$(B$,2,2)  :  IF  M 1  <  10  THEN  M$  =  "0" 
-I-  MID$(B$,2,1) 

480  r2  =  T3-(Ml  *60) 


17d 


COMPUTEI 


February.  1982.  Issue  21 


490  SI  =  INT(((T2  /60)  -  (INT(TE  /60)))  *  60) 

500  B$  =  STR$(S1) 

510  S$  =  MID$(B$,2,2)  :  IF  SI  <  10  THEN  S$  =  "0" 

+  MIDS(B$,2,1) 
520  TS  =  M$  +  ":"  +  S$:  RETURN 

The  most  valuable  feature  of  the  timekeeper  is 
the  ability  to  control  the  length  of  pauses  made 
during  execution,  independent  of  the  program 
lines  being  executed.  The  friendly  computer  guide 
shows  how  to  make  delays  by  using  a  FOR  ...  NEXT 
loop  with  the  statements: 

FOR  I  =  1  TO  100  :  NEXT  I 

The  major  problem  with  this  method  is  that  it  ties 
up  the  whole  program  while  you  pause.  You  can 
insert  program  lines  for  execudon  during  the  loop, 
but  then  some  guesswork  and  experimendng  will 
be  necessary  every  time  you  program  to  obtain  the 
desired  pause.  Frequently  you  will  have  to  com- 
promise between  the  statements  you  want  to  execute 
and  the  time  you  can  allot  to  the  pause.  Finally,  if 
the  lines  executed  during  the  pause  contain  the 
decisions  with  varying  amounts  of  program  to  be 
executed  based  on  the  decision,  the  length  of  the 
pause  becomes  unpredictable. 

Getting  Control  Over  Pause 

The  timekeeper  counts  independendy,  on  a  steady 
basis,  and  allows  you  to  assume  control  of  the  length 
of  a  pause,  while  permitting  other  parts  of  the 
program  to  continue.  To  do  this  you  simply  note 
the  time  the  pause  begins  and  add  the  desired 
pause  length,  giving  the  time  the  pause  will  end. 
An  IF  decision  watches  for  the  clock  to  exceed  that 
end  time,  and  you  can  run  other  parts  of  the  pro- 
gram while  the  pause  is  in  progress.  The  decision 
watching  for  the  end  of  the  pause  must  be  made 
with  a  reasonable  frequency,  so  the  number  of 
statements  you  can  execute  between  repetitions  of 
the  end-time  decision  will  depend  on  how  long  the 
pause  is  and  how  exact  you  want  the  measurement 
of  the  pause  to  be. 

As  a  very  conservative  rule-of-thumb,  allow 
twenty  eighty-character  (multiple  statement)  pro- 
gram lines  to  reach  the  end-dme  decision  at  an 
interval  of  about  ten  percent  of  the  total  pause 
length.  For  example,  if  I  pause  for  about  ten  se- 
conds, I  can  allow  up  to  one  second,  or  about  twenty 
program  lines.  Similarly,  a  two-second  pause  will 
allow  up  to  four  program  lines  between  repetitions 
of  the  end-time  decision.  You  can  use  a  greater 
number  of  lines  if  they  do  not  contain  several 
statements  each. 

These  time  estimates  are  very  rotigh:  do  some 
experimenting  yourself  to  find  how  many  state- 
ments you  can  squeeze  in  and  sdll  get  accurate 
control  of  the  pause  length.  Once  you  have  estab- 
lished some  rules  for  yourself,  they  should  be 


useful  in  all  your  programming. 

As  an  example  of  the  pause,  let's  say  that  Fm 
writing  a  game  program  in  which  we  explore  a 
dungeon.  If  someone  casts  a  magic  spell  of  dark- 
ness, then  I  want  to  give  no  visual  clues  for  the 
length  of  the  spell  -  say  twenty  seconds  —  while  the 
action  of  the  program  continues.  The  following 
segment  of  a  program  will  provide  that  effect; 

100  DEFFNPS(T2)=T1-F(T2*60) 

350  REM     THE  SPELL  IS  CAST 

360  GOSUB  900  :  PI  =  FN  PS(20) 

370  REM  PI  =  TIME  TO  END  BLACKOUT 

380  REM  THE 

390   REM   PROGRAM 

400  REM     CONTINUES 

410  REM       RUNNING 

420  REM  WITH  A 

430  REM  BLACK 

440  REM  SCREEN 

490   REM   (UP  TO  FORTY  PROGRAM  LINES) 

775  IF  TI>PI  THEN  GOSUB  902  :  GOTO  800 

780  GOTO  380 

800  END 

900  POKE  36879.8  :  FOR  I  =  38400  TO  38906  : 

POKE  1,0  I  NEXT  I 
905  RETURN  :  REM  BLACKOUT  MAKER 
920  POKE  36879,78  :  RETURN  :  REM  BLACKOUT 

LIFTER 

This  application  uses  the  function  PS  to  relate 
the  desired  pause  length  (T2)  lo  a  future  time 
value  (Pi)  which  dellnes  the  end  of  the  blackout. 

Another  application  of  the  pause  timer  can 
limit  how  often  I  mav  perform  an  action.  Fm  writing 
a  game  in  which  the  player  fnes  a  laser  cannon  that 
takes  five  seconds  to  recharge  before  it  can  be  fired 
again.  The  line  which  limes  the  fning  interval 
looks  like  this: 

350  IF  PEEK(197)  =  35  AND  TI>PI  THEN  GOSUB 

800:Pl=TI-(-(5*60) 
800  RETURN  :  REM  VISUAL  AND  SOUND  EFFECT 
FOR  LASER  FIRING 

Here  there  is  no  need  to  worry  about  running  the 
end-time  decision  within  a  set  interval  —  the  next 
time  I  want  to  fire  the  cannon,  the  logical  AND  in 
the  decision  checks  to  see  if  it  has  recharged.  This 
pause  method  can  also  be  used  in  an  education 
program,  to  limit  how  soon  the  student  may  answer 
after  a  question  appears,  or  may  try  a  second  time 
after  an  incorrect  first  answer  has  been  entered. 

If  you're  interested  in  converting  existing 
programs  to  timekeeper  pauses,  the  statement: 

FOR  I  =  1  TO  100  :  NEXT  I 

is  worth  about  eight  counts  on  the  timekeepeer,  or 
0.  ]  3  .seconds.  There  will  be  .some  difference  be- 
tween this  statement  and  a  longer  loop.  For  in- 
stance, modifying  the  statement  to: 

FOR  I  =  I  TO  1000  :  NEXT  I 


Februarv.  1982.  Issue  21 


COMPUTE! 


175 


80/40  COLUMN  ALIEN  INVADERS  ^ 

429.95  P 

Emctly  duplicates  the  Utw%  tntii    qiH.      Enjoy    tiouri    of     ^ 

cliillengin;  fun.    For  CoMo^art  Caaputsrs    Nith    RfteiH    4    of  ^ 

BASIC,  «ithtf  40  or  60  Coluwi  Scfcens  S 


COMMODORE       VIC       SOFTWARE 
Builtty  Softtare  ahich    incorpDritis    ncitim)    Sound,    Color, 
8riphics  tni  Anniiition,      Show  off  lU  of  tlw  tany  ficftt    *nd 
cipibiliticf  at  your  coiputtr. 


Lunar  Lander 

Vrap 

Breakout 

Blackjack 

Pong 

Slots 

Alien  Raiders 

Boibf  Allay 


HoH  Fin«» 
Hath  Drill 
Hangun 
Tahtit 
Othello 
Target  thiw 
Shooting  Gallery 
Capture 


All  of  the  above  are  priced  at  it.K  or  Hlect 
t27.50.    Please  add  *ZM  and  specify  the  DOS 
tiiih  diik  bated  softnare. 
Send  SASE  to  be  included  on  our  lailing  list. 
Add  .SO  shipping  and  handling.      Thank  Tou. 


any    three 
release    if 

MasterCard 
and  VISA 
Accepted. 


for 
you 


M  i  CFtO 

2?05  Port!  O'Call  Ct, 


Plane,  U 


LTD 

75075       (2141  847-1333 


J 


ACADEMY 

Software 

FOR  THE  VlC-20' 

TYPING  TUTOR  -  $9.95 

4  programs  of  increasing  difficulty  teach  toucfi  typing. 
Calculates  words  per  minute  and  counts  errors. 

FLASH-TESTER  &  FLASH-LOADER  -  S7.95 

2  programs.  Tester  program  selects  questions  once  per 
round  at  random,  keeps  score  and  allows  re-test  of  missed 
questions.  Data  tape  witti  50  States  and  their  capitals 
included.  Loader  program  allows  you  to  make  your  own 
data  tapes  for  use  with  the  Flash-Tester.  (Use  for  English- 
foreign  vocabulary,  historical  events-dates  or  names,  etc.) 

HANGMAN  -  S7.95 

Animated  custom  character  rewards  the  correct  answer 
with  music  and  a  dance.  Lose  and  he  is  hanged.  Instructions 
for  changing  the  word  list  are  included, 

SHARK  JAWS  -  S8.95 

Arcade  type  game.  Animated  custom  character  swimmers 
try  to  cross  channel  as  sharks  attack.  Harpoon  the  sharks  to 
bring  your  swimmers  in  and  beat  the  previous  high  score. 

VIC-DEFLECTION  -  S6.95 

Game  for  1  to  4  players  in  turn.  Keeps  score  of  all  players. 

Level  of  difficulty  option.  Deflect  the  moving  ball  into  the 

target. 

Shipping  &  handling  SI. 00  per  order 
California  residents  add  6%  sales  tax 

Sold  by  mail  only 

ACADEMY  SOFTWARE 

P.O.  BOX  9403 

SAN  RAFAEL,  CA  9491 2 


This  is  worth  72  counts,  or  ].'2  .seconds,  not  the 
eighty  counts  one  might  ex  peel.  This  is  hecau.se  of 
the  "overhead"  lime  needed  to  estahlish  the  loop 
during  execution.  There  may  even  lie  differences 
between  machines.  You  can  check  your  own  timing 
with  this  simple  program: 

10   BT  =TI 

20  FORJ=  1  TO  1000  :  NEXT  J 

30  FT  =  TI 

40  ET  =  FT-BT 

50  PRINT  ET,  ET/60 

This  displays  the  time  pa.ssed  in  holh  counts  and 
seccmds.  Try  varying  the  length  oi  the  loop  in  line 
20  to  get  a  general  idea  of  what  the  "overiiead" 
time  is  on  your  computer. 

You  need  to  do  nothing  to  the  timer  to  use  it 
as  a  basis  for  pauses.  However,  if  you  have  the  VIC 
on  for  long  periods,  or  if  you  set  TI.S  to  keep  clock 
time  and  run  the  program  near  midnight,  be  care- 
ful: if  the  pause  starts  before  midnight  and  ends 
after,  you  may  never  reach  the  end  of  tJie  pause, 
since  the  clock  resets  to  ()()()()()(>  ai  midnight.  'Sou 
can  put  in  additional  staiemenis  to  watch  for  this 
problem  and  compensate  for  it:  voti  can  have  the 
program  reset  the  clock  to  001)000  before  liming 
any  pauses;  or  you  can  ignore  the  possibilil)  and 


hope  for  the  best.  The  third  option,  technically 
unsoiuid  as  it  is,  rct|uircs  the  least  effort  and 
presents  no  great  threat. 

These  pause  techniques  have  two  important 
features:  controllable  pause  lengths  and  the  ability 
to  run  other,  unrelated  parts  of  the  program  while 
the  pause  is  in  effect.  Wlien  vou  de\  elop  a  jirograni. 
you  can  select  a  length  of  pau.se  that  will  nol  change 
as  you  add,  change,  remove,  or  relocate  program 
statements.  The  pause  can  also  be  lengthened  or 
shortened  to  suit  your  needs,  without  major  changes 
in  the  program  itself.  You  have  made  your  pause 
independent  of  ihe  program  that  contains  it.  At 
the  same  time,  you  can  execute  lines  of  an  unrelated 
portion  of  the  program  ^vhile  the  pause  is  in  prog- 
ress, making  the  program  independent  of  the 
pause  it  executes.  The  timekeeper  in  the  VKl  gives 
the  programmer  much  lietler  control  of  realism  in 
his  game  and  simulation  programs.  ^ 


COMPUTE!  The  Resource. 


176 


COMPUTE! 


February,  1982.  Issue  21 


An  Easy  Way  To 
Relocate  VIC 
Programs  On 
Other 

Commodore 
Computers 

Greg  Sherwood  and  Ross  Sherwood 
Monhattor^,  KS 

BASIC  programs  that  are  generated  on  Commo- 
dore's new  color  computer,  the  VIC-20,  start  at 
memory  location  4097  ratlier  than  at  1025  as  in 
Commodore's  other  computers.  Thus,  il'you  wish 
to  use  features  available  for  some  of  the  other 
computers  such  as  Toolkit,  etc.  to  edit  or  modify  a 
program  written  or  stored  from  a  VIC^,  you  need 
to  relocate  the  program  so  it  starts  at  memory 
location  1025. 

The  following  is  a  description  of  a  cjuick  and 
simple  method  of  relocation  of  VIC  programs,  I 
will  describe  two  versions,  one  using  the  built  in 
monitor  and  the  other  done  in  direct  mode. 

To  relocate  a  VIC  program  from  the  monitor, 
load  the  program  from  tape  and  then  enter  the 
monitor  with  SYS  1024.  Next,  look  at  the  first  part 
of  BASIC  memory  by  typing  M  0400  0400,  Make 
the  following  changes  to  the  displayed  memory: 

'M  0400  00  01  10  00  00  99  00  XX' 
(XX  means  doesn't  matter.) 

Next  exit  the  monitor  by  typing  an  X.  Now 
type  LIST  and  the  VIC  program  should  list  out 
with  an  additional  line  (line  0)  at  the  beginning:  0 
PRINT  Finally  type  "0"  and  RETURN  and  the 
\IC  program  is  relocated  and  can  be  edited  or 
modified  at  will. 

To  accomplish  the  same  change  in  direct 
mode,  the  following  six  POKEs  are  entered: 

POKE  1025,1:POKE  1026,16 

change  link  pointers  to  VIC  program 
POKE  1027,0:POKE  1028,0 

create  line  #0 
POKE  1029,159 

put  PRINT  on  line  0 
POKE  1030,0 

end  of  line  indicator 


Now,  as  above,  type  LIST  and  the  VIC  pro- 
gram will  list  %vith  the  additional  line  0  PRINT. 

Last,  type  "0"  and  the  Hue  0  will  be  eliminated 
so  the  VIC-  program  can  be  edited. 

This  method  works  with  both  BASIC  3.0  and 
4,0  Commodore  computers  and,  through  it  hasn't 
been  tested  on  other  versions,  it  should  wf>rk  on 
those  as  well.  It  has  been  successfully  used  on  both 
40  and  80  column  machines. 

If  you  should  wisli  to  relocate  several  VIC 
programs  in  succession,  the  following  assembly 
language  subroutine  can  Ije  used.  It  begins  at  loca- 
tion 926  in  the  second  cassette  buffer  and  can  be 
called  l^y  SYS926.  To  load  this  program,  enter  the 
monitor  and  type  M  039L  03C8  annd  change  the 
memory  as  follows: 


039E   A9 

00 

8D 

03 

04 

8D 

04 

04 

03A6  8D 

06 

04 

A9 

30 

8D 

6F 

02 

03AE  A9 

01 

8D 

01 

04 

A9 

10 

8D 

03B6   02 

04 

A9 

99 

8D 

05 

04 

A9 

03BE  OD 

8D 

70 

02 

A9 

02 

85 

9E 

03C6   60 

00 

XX 

XX 

XX 

XX 

XX 

XX 

This  program  can  be  saved  on  ta|3e  or  disk  by 
.saving  from  0391'.  to 03CS  and  then  can  l)c  loaded  in 
anvtime  and  used  to  relocate  VIC  programs  with  a 
SYS926  command  until  the  machine  is  turned  off  or 
the  second  cassette  buffer  is  used  for  some  other 
purpose.  This  subroutine  is  located  high  enough  in 
the  second  ca.ssette  bulTer  that  disk  ojierations  don't 
overwrite  it. 

This  subroutine  automatically  erases  line  0  and 
so  that,  when  you  return  to  BASIC,  the  VIC  pro- 
gram is  moved  and  ready  to  be  edited,  etc.  without 
the  necessity  of  removing  line  0. 


039E 

fl9 

00 

Lnfl 

#-|:00 

03H0 

sn 

03 

04 

STfl 

$0403 

03H3 

sn 

04 

04 

STfl 

$0404 

03nb 

311 

06 

04 

STfl 

$0406 

03fi3 

fl9 

:-ifi 

Lnfl 

#$30 

03RE 

sn 

6F 

02 

STfl 

$026F 

03RE 

fi9 

01 

Lnfl 

#$01 

03E0 

sn 

01 

04 

STfl 

$0401 

03E3 

fly 

10 

LEfl 

#$10 

03B5 

sn 

02 

04 

STfl 

$0402 

03E3 

fiS 

■^9 

Lnfl 

#$99 

03ER 

sn 

0.5 

04 

STfl 

$040.5 

ySBD 

fly 

0D 

LDH 

#$0n 

03EF 

sn 

70 

02 

STfl 

$0270 

03C2 

fl9 

02 

LBfl 

#$02 

03C4 

35 

SE 

STfl 

$9E 

03Cb 

60 

RTS 

03C7 

00 

ERK 

03CS 

00 

ERK 

m 

Review: 

UMI  Amok 
For  VIC 

Harvey  B  Herman 
Associate  Editor 

One  of  the  reasons  people  buv  personal  computers 
is  lo  ]}lay  games.  I  conless  that  ill  is  reviewer  is  no 
exception.  In  contrast  lo  all  the  serious  applications 
of  computers,  it  is  still  fun  lo  relax  and  play  an 
occasional  interesting  and  challenging  game.  The 
Commodore  VIC  is  particularly  suited  for  game 
playing  as  it  comes  with  an  interface  for  a  Joystick 
and  can  play  sound  eilccls  ihrough  (hc'f'V  speaker. 
Unusual  displays  are  also  possible  because  one  is 
not  limited  to  a  standard  character  set  composed  of 
letters,  numbers,  and  graphics.  A  knowledgeable 
user  can  dellne  a  new  set  for  special  effects. 

Until  now,  the  VIC  games  I  ha\e  pie\iewed 
have,  for  the  most  part,  been  good,  but  nevertheless 
have  not  taken  full  advantage  of  all  the  VlC's  capa- 
bilities. All  of  them  have  been  written  in  B.\SIC 
which  can  be  too  slow  for  good  animated  displays. 
Machine  language  usually  looks  much  more  realis- 
tic. The  AMOK  program  was  a  pleasant  surprise. 
The  author.  Roger  Merritt,  seems  to  have  done 
everything  right.  His  machine  language  program 
uses  the  features  of  the  VIC^  to  advantage.  My  kids, 
on  whom  1  rely  to  advise  me  on  game  jjrogranis, 
rated  it  a  9  (out  of  10  possible).  I  did  enjoy  playing 
with  it  myself,  but  not  as  much  as  thev  dicl. 

You  Against  The  Angry  Robots 

I'he  game  works  like  this:  you  are  in  a  partitioned 
room  with  angry  robots.  The  robots,  shown  in 
various  colors,  are  shooting  at  you  and  you,  of 
cour.se,  are  dodging  and  returning  their  fire.  You 
get  three  chances  before  the  game  is  over.  You  lose 
a  chance  whenever  your  character  touches  the 
walls,  partitions,  or  robots.  If  the  roliois  hit  you 
with  their  fire,  you  also  lose  a  chance.  Your  charac- 
ter is  controlled  with  a  joystick  or  the  keyboard. 
Other  rooms  can  be  entered  (the  dooi-  closes  behind 
you)  where  you  encounter  a  new  .set  of  differently 
colored  robots.  The  object  (jf  the  game  is  to  .score 
the  most  points.  The  color  of  the  robot  determines 
its  point  score  and  there  are  bonus  scores.  The 
difficulty  of  the  game  is  set  at  the  beginning. 

I  think,  ill  all  fairness,  our  enlhusiasm  is  pardy 
due  to  some  of  the  relati\ely  pedestrian  VIC  pro- 
grams which  we  have  pi-e\iously  seen.  Your  char- 
acter in  this  program  is  a  sight  to  behold.  I  have 


Your  VIC"  Will  Smile 
When  It  Meets  IflXfl 


Your  VIC  IS  one  cute  little  beast,  witti  lots 
of  features  for  Itie  price  color,  sound,  PET 
Basic,  and  a  real  keyboard.  But  your  VIC 
needs  programs  to  stiow  off  all  tfiose  great 
features,  and  that's  wliat  VIXEL  is  all 
about.  We  bring  you  a  cassette  witti 
several  clever,  imaginative  programs, 
created  just  for  the  VIC.  Naturally,  a  well- 
written  booklet  of  instructions  comeswith 
every  VIXEL. 

VIXEL  #1  IS  available  now  for  only  S12.95, 
including  sfiipping  in  ttie  US  and  Canada. 
It's  tbe  sort  ot  outstanding  software 
package  you'd  expect  from  the  folks  wtio 
have  published  over  150  great  CURSOR 
programs  for  the  PET, 

VIXELwillmakeyour  VIC  smile.  And  you'll 

smile  too.  VISA  and  M*5lefcaid  wolcom* 


TM 


theCODE 
WORKS 


Thfr  Cooe  Werks 

VIXEL  is  a  l«dnn«rk  at  TJie  Code  Woffc*.  Go'ew^CA  Mii6 

VIC     It  I  tfidemArk  ol  CammodUirt  Suiiineu  MAehln««,  Inc.        ^aoSi  66.3-1565 


178 


COMPUTil 


Febfuary,  1982.  Issue  21 


not  seen  graphics  this  good  on  either  the  VIC  or 

the  PET  and  it  approaches  animations  I've  seen  on 
dedicated  video  games.  I  recommend  this  program 
liighly,  particularly  if  you  have  game  playing  kids. 
I  am  told  it  is  similar  to  the  arcade  game  BEZERK. 
An  adult  may  not  stay  interested  for  hours,  but  a 
kid  will.  Think  of  all  the  quarters  you  will  save. 

Hints  by  Herman  — if  you  have  added  the  AK 
memory  expansion,  a  special  load  sequence  is 
necessary.  Use: 

LOAD  "",1,1 
SYS  4110 

This  is  not  in  the  instructions. 

United  Microivare  Industries 

3431  H  Pmmma  Blvd. 

Pomona,  C-"^  91768 

$18.95  Q 


Review: 

UMI  3K  VIC 

Memoiy 

Expansion 

Harvey  B.  Herman 
Associate  Editor 

This  small  circuit  board  is  designed  to  plug  into  the 
44  contact  female  edge  connector  inside  the  VIC. 
It  adds  3K  of  RAM  memory  to  the  5K  normally 
present.  When  the  VIC  is  powered  up,  the  bytes 
free  message  should  now  total  6655  instead  of 
3583.  This  means  that  programs  loaded  from  tape 
can  be  almost  twice  as  long  as  before  without  run- 
ning out  of  memory.  The  board  also  has  two  empty 
ROM  s<jckets  which  allow  up  to  16K  of  programs 
on  chips  to  reside  permanently  in  memory.  These 
programs  do  not  disappear  when  power  is  turned 
off  or  lost.  Initial  startup  with  ROM-based  software 
is  much  more  convenient  compared  with  a  long 
program  loading  from  tape.  Many  ROM  games 
and  other  interesting  ROM  programs  will  be 
marketed  by  UMI  and  other  companies.  This 
board  will  allow  you  to  use  them  without  additional 
expense. 

The  circuit  board  is  easily  installed.  The  VIC 
case  does  not  even  have  to  be  opened  as  the  board 
fits  through  the  opening  in  the  rear.  If  you  read 
and  follow  the  quite  explicit  direcdons,  I  predict 
you  won't  have  any  difficulty. 


It's  Solidly  Constructed 

I  have  several  positive  comments.  The  board  looks 
solidly  constructed  and  seems  to  be  well  thought 
out.  Each  ROM  can  l^e  placed  in  one  of  two  areas 
of  memory  and  three  ROM  sizes  can  be  accommo- 
dated. The  instructions  even  give  technical  hints  to 
advanced  hobbyists  who  intend  to  program  their 
own  ROMs.  The  price  is  competitive  with  similar 
boards  I  have  seen  advertised,  but  have  not  yet 
examined  critically. 

I  have  two  minor  negative  comments.  Contact 
fingers  on  the  board  are  not  gold  plated  so  corrosion 
could  be  a  problem  under  certain  conditions.  This 
will  probably  not  be  a  concern  in  typical  household 
use,  however.  The  board  sticks  out  a  little  fioni  the 
back  of  the  VIC  and  is  unprotected.  Users  will 
have  to  take  care  that  it  does  not  get  knocked  about. 
Again,  I  do  not  sec  this  as  a  serious  problem. 

As  you  may  have  inferred,  1  am  quite  happy 
with  this  memory  expansion.  I  felt  somewhat  limited 
by  the  small  amount  of  available  RAM  in  the  original 
VIC.  Now  I  can  run  more  ambitious  programs.  I 
am  also  looking  forward  to  installing  the  better 
ROM-based  programs  when  they  bect)me  available. 

United  MicrmMirc  Industries 

343 i  H  Pfimoiw  Blvd. 

Pomona.  CA  91768  ^ 

S79.9?  ® 


nUFEKDP 

SOFTWARE   PEOPLE 

e^mes  for  VIC  20  dvaibfale  nm 

ALL  5  FOR  $35.00    or S9.99  A  PIECE 

VIC-MAN  -  you  guessed  it  -  you  won't  believe  it 
ALIEN  PANIC  -  dig  holes  through  brick  floors  of 

three  story  laddered  mo^e  to  trap  alien 

DODGE  CARS  ■  fast  fun  hard  to  quit  playing  -  keeps  top 
5  scores  and  compares  with  lost  50 

Blow  UP  -  you  and  a  live  nnine  field  filled  with  booty  - 
get  as  much  as  you  con  in  two  minutes 

BANK  ROBBERS  -  just  try  to  moke  crime  pay  -  before 
the  police  come 

ALSO  -  Collide,  Bomber,  Raceway  and  many  more  send 
i.50  for  more  information. 


nUFEKOP 


P,0.  BOX  156,  SHADY  COVE.  OREGON    97539-0156 


VIC  IS  a  icKisleied 

ii&demaik  foi 

Commadot  Bui^  Machifics 


'NUFEKOP:CDrxiid  origin,  concerned  with  the  putting  of  a  eKtrordinarily 
large  amount  in  a  smaii  pocl^et  or  enclosure;  possible  mys* 
ticai  connotations.  


February,  1962.  Issue  21 


COMPUTEI 


179 


Alphabetizer 

Jim  Wiicox 
Vienna  WV 

The  following  proj^iam  will  aljihalictizc  letters  or 
pill  luinibers  in  order  Iroiii  lowest  lo  highest.  The 
firsl  thing  that  will  happen  is  the  screen  will  clear 
and  the  message  "HOW  MAN^'  VARIABLES?" 
will  appear  on  the  screen.  You  then  type  in  the 
lunnhcr  of  names  you  wish  to  sort.  The  variable 
"V  AR"  will  take  on  the  value  iy]X'd  in.  The  state- 
ment at  line  number  20  will  set  the  amount  of 
variables  of  the  dimensioned  variable  "A$".  If  you 
are  stuck  on  dimensioned  variables,  read  on. 

DIMensioned  Variables 

Dimensioned  variables  can  be  compared  lo  houses 
on  a  street.  Let's  say  the  house  numbers  on  this 
block  start  at  one  and  end  at  ten.  They  all  belong  lo 
the  street  named,  say  "Washington."  To  make' 
things  easier  than  naming  each  house  after  a  dif- 
Fcrenl  president,  they  are  given  numbers.  There 
might  be  another  house  with  the  number  two,  but 
not  on  the  same  street.  The  name  of  the  street  is 
the  variable,  but  there  is  more  than  {)ne  house  on 
the  street,  which  are  variables  too.  lO  get  a  letter  lo 


house  #2  on  Washington  Street,  one  would  have  to 
write  the  person's  name,  "Jones,"  who  would  reside 
at  2  Washington  Street.  In  a  computer  prograin, 
one  could  set  the  variable  WASHINCi  1()N.?(2)  = 
"JONES".  1  Washington  Street  might  have  the 
"George's"  living  there  so  the  variable  would  be 
WASHINGTON,«(I)  =  "GEORGE".  So  a  dimen- 
sioned variable  is  a  variable  that  has  other  variables 
related  to  il,  i.e.  all  the  ]>eople  on  the  block  have  in 
common  the  fact  they  li\e  on  Washington  Street. 

I  rccomtiiend  that  you  try  a  small  list  first, 
such  as  ten  of  the  letters  of  the  alphabet  mixed  up. 
This  will  not  take  long  to  put  the  chaiacters  in 
order  and  ihe  progrannner  can  tell  whether  the 
program  was  typed  in  jiropcrly.  On  longer  lists  it 
becomes  tempting  to  hit  the  RUN/STOl'  key  to  see 
if  the  computer  is  stuck  in  an  endless  loop,  but  the 
longci'  the  list,  the  longer  it  takes. 


10 

20 
30 
40 
50 
60 
70 


COMPUTERS  Listing  Conventions 

M;iny  |)i-o!rrams  wliit  li  :iri-  lisifd  in  COMPUTE!  use 
tui-.si)i-  conm)!  kc\s.  kiIoi  keys,  and  so  t(nih.  \\v  h;i\t> 
cstahlishofl  a  lisliny  convt-ntinii  whicli  wf  l)clic\c 
cases  [lie  (ask  tjl  iNpiiig  [jrograms  in  acciii-alciy. 

PET/CBM/VIC  Conventions 

Ck'neially.  I't  l/CBM/X'IC  ijrogiains  will  coivuiin 
1)1  aikflcd  w<jr(ls  tin  am  s|)e(ial  tharattcrs:  1 1K)\\'\  j 
iiK-ails  thecuisor-down  key:  [."?  DO\^'^■]  means  type 
the  tuTsoi-doun  key  three  times. 

I  fa  piogram  line  rims  over  into  the  next  line 
ciown.  ihe-  symbol  iiulicatcs  where  llie  line  liroke 
(in  case  (iie  immhei  o(  s])aees  is  unclear  lietween 
[|U<)les).  At}  mulerlirie  means  that  that  key  is  shifted. 

VIC  Conventions 


SET    COLOR    TO    BLACK 

[BLK] 

SET    COLOR    TO   WHITE 

(WHT) 

SET    COLOR   TO   HED 

IRED) 

SET   COLOR  TO  CYAN 

ICVN) 

SET    COLOR   TO   PUSPLE 

IPURl 

SET    COLOR   TO    GREEN 

[GRNl 

SET    COLOR   TO    BLUE 

[BLUI 

SET    COLOr!    TO   YELLOW 

[VELl 

FUNCTION    ONE 

IFII 

FUNCTION    TWO 

tF2| 

FUNCTION    THREE 

IF3I 

FUNCTION    FOUR 

!F<I 

FUNCTION    FIVE 

lTb\ 

FUNCTION    SIX 

[F6) 

FUNCTION    SEVEN 

If!] 

FUNCTION    EIGHT 

[FBI 

ANY    NON- IMPLEMENTED 

FUNCTION 

[NI«) 

INPUT" {CLEAR} HOW  MANY  VARIABLES" 

;  VAR 

DIMA$ (VAR+22) 

F0RA=1T0VAR 

PRINT" # "A; 

INPUTA${A) 

NEXT  A 

PRINT" ALPHABETIZING" 

8  0  F0RA=1T0VAR-1 

9  0  F0RB=A+1T0VAR 
100  IFA$(B) <=A$ ( 

A)THENSM$=A$ 


*VIC  20  USERS! 

EXPANDOR  MODULE 

add  24K  with  Expander 

an  open-air  board 

S295.00 

Expandof  plugs  directly  into  the  *VIC  20 

expansion  port  and  requires  NO  additional 

power  supply.  Expander  is  a  cost  effective 

way  to  expand  the  3K  internal  memory  of 

the  *\/IC  20  up  by  24Ki|l  Programming  of  the 

*VIC  20  has  become  more  practical  with  the 

introduction  of  Expander. 

Ask  your  local  computer  dealer 

or 
send  check  or  money  order  to: 

QUANTUM  DATA,  IMC. 

3001  Red  Hill  Ave. 

BIdg.  4,  Suite  105 

Costa  Mesa,  CA  92626 

(714)  754-1945 

•s  rradermik  ol  COMMODORE 
CA  lesidtnls  adrJ  6%  wfei  l^lx 


(B)  :A$(B)=A$( 

A) :A$ (A)=SM$ 

110 

NEXT    B 

120 

NEXT    A 

130 

PRINT"FINISH 

ED    ALPHABETI 

ZING" 

140 

POKE36878,8 

150 

P0KE36B74,25 

0 

FORA=1TO500 

160 

170 

NEXT   A 

180 

POKE36878,0 

190 

POKE36874,0 

200 

F0RA=1T0VAR 

STEP22 

210 

F0RB=AT0A+21 

220 

PRINTA$ (B) 

230 

NEXT    B 

240 

GETA$:IFA$=" 

"THEN240 

250 

NEXT   A 

260 

END                        © 

QkSHiSHfIHE 
RQDa 


User 
System 


—  Works  with  all  combinations  PET/CBM  models. 
— 100%  Hardware.  No  software  required! 

—  No  special  commands,  User  TRANSPARENT! 

—  Up  to  8  users  can  share  a  disk  S/or  printer. 
— 10,  15,  20,  Si  25  foot  cables  available. 

—  Connects  in  minutes,  no  tools  necessary. 

—  Ideal  for  EDUCATIONAL  &  BUSINESS  needs. 

—  increases  productivity  —  Reduces  Costs! 


DISKSHARE  9000-3  3  USER  SYSTEM  WITH  6ft.  CABLES  $749.00 

DISKSHARE 9000-8  8  USER  SYSTEM  WITH:  $1149.00 

-THREE  6ft.  CABLES 
-THREE  10ft.  CABLES 
-TWO  15ft.  CABLES 

DrSKSHARE  9001-6  ADD-ON  CABLE  [6  FOOT  LENGTH]  $      79.95 

DISKSHARE 9001-10  ADD-ON  CABLE  CIO  FOOT  LENGTH]  $      99.95 

DISKSHARE 9001-15  ADD-ON  CABLE  [1 5  FOOT  LENGTH)  $    119.95 

DISKSHARE  9001-20  ADD-ON  CABLE  [20  FOOT  LENGTH)  $    139.95 

For  More  Information  Call: 


Questar  international  Inc. 


Suite  102 

7270  Woodbine  Avenue, 

Markham,  Ontario  Canada 

(416)490-8044 


dealer  and 

distributor  inquiries 

invited 


February,  1982,  Issue  21 


COMPUTEI 


m 


CAPUTE: 

Corrections  and 
Amplifications 


—  Issue  #16,  pg.  107,  "The  Unwedge":  in  line 
1 16,  the  final  datum  should  read  H259,  not  H25. 


—  Issue  #18,  pg.  60,  "Bits,  Bytes  and  Basic  Boole" 
the  following  lines  should  be  changed  in  the  pro- 
gram listing: 

1060FOR  Al  =  0TO3 

1070  A2  =  2tAl 

1090  SC(0,A3,A1)  =  SA(A3  OR  A2) 


—  Issue  #  1 8,  pg.  I  1 H,  "Assembler  Update"  was 
missing  ilie  tollowing  program  and  was  inadveil- 
ently  in  the  Atari  Gazette.  Mr.  Brandon's  Assembler 
for  the  PET  (which  originally  appeared  in  Issue 
#13,  pg.  120)  can  be  upgraded  with  the  following 
modifications  to  permit  LOAD/SAVEs  of  source 
code  to  disk: 

Prograin  2. 

300  PRINT" {DOWN} { REV} I { OFF} NPUT 
REV}D{OFF}ELETE  I{REV}N{0F 
OFF}SERT  {REV}L{0FF}IST  {R 
REV}S{OFF}AVE  L{ REV} 0 { OFF} 
AD" 
305  PRINT" {REV}A{OFF}SSEMBLE  {REV}Q 

lOFFlUIT" 
360  IF  CM$  =  "0"THEN110I30 
370  IF  CM$="S"THEN12000 
11000  INPUT"FILENAME  ";FL$ 
11010  OPEN8,8,2,"0:"+FL$+",S,R" 
11020  F0RT=1T0MEM 
110  30  GET#8,I0$:IFI0$=CHR$ (13)THEN110 

50 
11040  A$ (T) =A$ (T)+IO$;GOTO11030 
NEXTT 
CLOSES 
GOTO300 

INPUT"FILENAME  ";FL$ 
OPENS, 8 ,2,"0: "+FL$+" ,S,W" 


11050 
11060 
11070 
12000 
12010 
12020 
12030 
12040 
12050 
12060 


F0RT=1T0MEM 

PRINT#8,A$ (T) ;CHR$ (13) 

NEXTT 

CLOSES 

GOTO300 


—  Issue  #18,  pg.  148,  "Inversion  Partititjning"  will 
run  on  the  Original  ROM  PET  with  the  following 
lines  changed  (our  thanks  to  Lou  Sander): 

Prograin  3. 

033A  A2  00  E0  00  D0  ID  A5  87 
0362  A5  02  48  A5  66  48  A5  67 


0372 

02 

A9 

FE 

85 

66 

A9 

3F 

85 

037A 

67 

Al 

01 

48 

Al 

66 

81 

01 

0382 

68 

81 

66 

E6 

01 

C6 

66 

E4 

038A 

01 

D0 

EE 

E6 

02 

C6 

67 

A5 

0392 

67 

C9 

21 

D0 

E4 

68 

85 

67 

039A 

68 

85 

66 

68 

8  5 

02 

68 

85 

0  3A2 

01 

38 

A9 

FF 

E5 

7C 

48 

A9 

0  3AA 

43 

E5 

70 

48 

A9 

FF 

E5 

86 

03B2 

85 

7C 

A9 

43 

E5 

87 

85 

7D 

0  3BA 

68 

85 

87 

68 

85 

86 

EC 

3D 

03CA 

8E 

01 

04 

8E 

02 

04 

85 

6F 

03D2 

85 

7D 

A9 

01 

85 

6E 

A9 

03 

0  3DA 

85 

7C 

A5 

7C 

85 

7E 

85 

80 

03E2 

A5 

7D 

85 

7F 

85 

81 

A5 

86 

03EA 

85 

82 

A5 

87 

85 

83 

60 

00 

NEW  SOFTWARE 

*VORTEX: 

The  enemy  is  at  the  center  of  swirling  rings  of 
energy.  Your  mission  -  penetrate  and  destroy. 

*PHANTOM  fighter: 

Defend  Superstition  fv/lountain  from  attacking 
UFOs,  ^ 

Two  original  arcade  games  for  40  column  PETs. 
Macfiine  language  routines  and  grapfiics  by  Bob 
Carr  and  Katfiy  Higby,  tfie  originators  of  FROG, 
DANCER,  OURANOS!  and  DROMEDA! 

• '  •  Each  1 4.95*  on  cassette  •  •  • 
Also  Available 

WASPS .    9.95*  Cassette 

Defend  yourself  from  killer  insects! 

GRAPHIC  QUO    ....    6.95*  cassette 

Two  terrific  animated  cartoons. 

GAME  PAC 6.95*  cassette 

SUPERFROG!  -  AEROSOL!  -  WEATHER  WAR! 


M'RQIE  E-RRPET 

P.O.  Box  3511 5   Phoenix,  A2  85069 


"Arizona  residents  add  5%  sales  tax. 

Guarantee -If  tor  any  reason,  one  of  our  programs  war  t  load  return  it  lor 
free  replacement. 


SOFT>A/ARE   -   HARDV\/ARE 


fsi 


COMMUNICATIONS  AND 
COMPUTER  TOOLS 


UMI  RS232  COMMUNICATOR  INTERFACE  S49.95 

Our  RS-232  Communicatar  Interface  enables  the 
VIC-2a  to  talk  !o  most  RS232  devices. 

VICTERM  A  S19.95 

With  the  VICTERM  A  program,  begin  telephone 
commLnicatlons 

UMI  3K  RAM  CARTRIDGE  S39.95 

The  easiest  way  to  have  6655  bytes  of  program 
memory  in  your  VIC. 

UMI  3K  RAM  EXPANDER  S79.95 

For  prograrnmers.  ROM  developers  and  advanced 
users,  our  3K  RAM  EXPANDER  adds  two  nOU  slots 
and  3K  of  RAM  memory  to  the  Commodore  VIC-20  to 
give  a  total  of  6655  bytes  of  availabie  user  memory.  An 
8-po5ition  dipswitch  provides  switch  -  selectable  base 
address  and  single-socket  enable/disable  to  two  ROM 
sot;kels 

UMI  BK  RAM  CARTRIDGE  S89.95 

Our  BK  HAM  CARTRIDGE  adds  BK  ol  user  memory  to 
the  VIC-20 

UMI  SOCKETED  8K  RAM/ROM  BOARD  $29.95 

Our  8K  board  has  four  sockets  for  mixing  and 
matching  RAMS.  ROMS,  or  EPBOMS 

BUTI    (BASIC  PROGRAMMERS  UTILITY  ROM)  S34.95 

A  beauty  ol  a  ROM  that  plugs  into  CVH-0IM2.  our  3K 
RAM  EXPANDER.  Or  CVU-OOM,  our 
RAM/ROM/EPHOM  Board 

UMI  VIC-20  REFERENCE  CARD  $4.95 

Oura-1/2"  by  IV'  laminated  reference  card  is  packed 
with  commonly  needed  Commodore  VIC20 
information. 


PROGRAMS  FOR  THE 
COMMODORE  PET^ 


.   SATELLITES  AND  METEftORITES  S49.95 

Saiellites  and  Meleroriles  is  a  greater  challenge  than 
most  space  pilols  tiave  met, 

.  SKYMATH  S12.95 

Decimal  addition  and  suDtraction  with  super  PET 
graphics' 

•  MATH  SERIES  DISKETTE  I  S29.95 
Peaagogically  correcl  programs  SKYMATH. 

SPACEDIV,  and  LONGDIV.  on  a  5-1/4"  Diskette  for 
Commodore  Disk  Drives. 

•  SPACEDIV  $12.95 
Diwision  practice  with  graphics  that  hoEd  ^he  child's 

interest 
.  LONGDIV  $14,95 

20  problems  ol  step-by^slep  long  division  with  super 
grnphics  rind  1  -inch  high  digits. 

•  SUPEHHANGMAN  $16.95 
Superior  graphic  version  of  the  popular  spelling  game. 


GAMES  AND 
ENTERTAINMENT 


•  ALIEN  BLITZ  $24.95 

Split  second  reactions  at  the  superhuman  9th  level  ot 
ALIEN  BLITZ.  w\\  find  how  good  you  really  are 

•  SPIDERS  OF  MARS  (CARTRIDGE)  559.95 
You  are  a  trapped  space  fly.  fire  at  the  horde  of 

Martian  Spiders  wending  their  way  to  satisfy  their 
urge  to  devour  you. 

•  BLASTOIDS  SI  8.95 
Blast  the  cruising  junk  from  space  miner's  rock  piles 

to  smithereens  before  it  crashes  into  you. 

•  A'MAZ-IN  S1B.95 
F^st  action  color  game  lor  one  or  two  players. 

•  AMOK  SI  8.95 
The  halls  ol  AMOK  are  populated  by  robots  that  obey 

one  instruction  —  Get  the  intruder! 

•  ROBOT  BLASTERS  $39.95 

Only  blasts  from  your  lasers  can  breach  the 
near-impregnable  rows  of  walls  circling  your  only 
means  of  escape- 

•  ASTRO  TRANSPORTER   (CARTRIDGE)  S59.95 
As  Captain  your  duty  is  lo  use  your  powerful  thrustors 

to  guide  space  barges  to  a  soft  landing  on  Earth, 

•  3D  INVADERS     {CARTRIDGE)  S59.95 

A  new  view  —  from  the  wide-angle  viewport  ol  your 
movable  laser  Tiers  ol  attackers  march  back  and  forth 
above  you.  dropping  bombs- 

•  MASTERWITS  S9.95 
Try  to  deduce  the  pattern  ot  four  markers,  using  6 

colors,  MASTERW]TS  hides  from  you! 

•  FABULOUS  FOUR  I  S59.9S 

Four  ol  our  most  popular  and  exciting  game 
cassettes  in  one  package 

STAR  WARS         Blast  that  tie  fighter! 

DRAGON  MAZE        Lurking   man-eating  dragon. 

LASER  WAR         Blast  away  space  debris  and  aliens. 

INVADER  FALL         Alien  parnlroopers  descend  Irom  space. 


EDUCATION 


•  SUPER  ADDITION,  SUBTRACTION, 

DO  NT  FALL  SI  4.95 

One  cassette  contains  all  three  educational  games. 

•  SKYMATH  $14.95 

Wiih  excellent  graphics.  SKYMATH  shoots  6-digil. 
3-place  addition  and  subtraction  problEms  Into 
screen's  "sky""  in  1-inch  high  digits. 

•  SPACEDIV  S14.95 

Division  practice  with  graphics  that  hold  the  chifcJs 


GAME  PROGRAM  CARTRIDGES  NOW 
AVAILABLE— ORDER  NOW! 


.    DEALER  INQUIRIES  INVITED 

•  ATTENTION  SOFTWARE  DEVELOPERS 

Please  contact  UMI  for  ciistriljulion  and  top  royalties.   CarirMge  kits  available  in  quantity. 

•  MASTERCARD/VISA  Accepted 


V^    Z*        united  microvusre 
yT)^  ^^  industries  inc. 

3il31  H  Pomona  Blufl 
Pomona,  CA  Qivea 


O      '     Please  ^fi^a  me  my  FREE  CATALOG 


r^^* 


unit;ecl  microw/are 
indusibries,  inc. 


[li?scribrn^  *oui   Ha'd^a'^ 


/ 

^       CiTV 


•  3431  H  POMONA  BLVD.  •  POMONA.  CA  91768  •    PHONE  (714)  594-1351 

VIC  2Q  and  PET  are  Rtgisferod  Trademaf'ts  ol  Commodore  Business  Machines 


February.  1982.  Issue  21 


COMPUTEI 


183 


Board  Offers  24K 
Additional 
IVIemory  For  VIC  20 

QuaiULiin  Data  Inc.  of  Closta 
Mesa,  CA  announced  the  ("iisi  of 
ils  new  products  to  expand  the- 
capabilities  of  the  (A)mniodore 
VIC  20  personal  computer:  A 
Board  allowint^  up  to  24 K  of 
additional  user  mcmor)  .  Desig- 
nated the  QDl  Expandor,  it 
expands  the  memory  of  the  VIC 
to  a  total  oi'29K  l>ytes. 

Designed  for  those  users 
who  need  more  than  the  3K  of 
user  RA\[  available  on  tlie  VIC', 
the  QDI  Expandor  is  available  in 
several  configurations  from  OK 
to  24  K  of  additional  memory. 
The  board  uses  state  of  the  art 
memories  which  allow  the  board 
to  consume  less  than  l.")0  M.\ 
even  when  fully  loaded  with 
RAM,  4'hesc  memories  are  also 
pin  compatabic  with  popular 
EPROMs  and  ROMs  and  they 
can  be  mixed  and  matched  in  SK 
blocks. 

In  its  standard  configuration, 
tlie  QDI  Expandor  uses  memor\ 
from  HEX  2000  to  7FFF  but  it 
may  al.so  be  jumpered  to  operate 
one  of  the  8K  blocks  in  the  AOOO 
to  liFFE  range,  "Where  the  ability 
of  the  board  to  handle  ROMs  is 
very  convenient,"  explains  Dick 
Edwards,  QDI's  president. 
"Thai's  because  the  VIC  starts 
looking  at  location  AOOO  on 
power  up  to  see  if  there  is  a  ma- 
chine language  program  present 
in  ROM,  and.  il  there  is.  it  will 
nm  that  |)rogram.  We  expect  tiiis 
feature  to  be  of  special  interest  to 
s)'slcms  liouses,  wiici  are  going  to 
use  this  computer  where  a  t-esi- 


dent  machine  language  program 
is  important." 

Measuring  4.5  by  6  inches, 
the  QDI  Expandoi"  can  [:>hig 
directly  into  the  \4("  inemor\ 
expansion  port  or  in  liie  expan- 
sion chassis  that  QDI  will  soon  be 
announcing.  Pric:ed  at  a  suggested 
retail  of  $295.00.  the  board  is 
available  from  sto<  k. 

For  finthei"  information 
contact:  Qtiantum  Data,  Inc., 
3001  Redhill,  BIdg.  4.  Suite  105, 
C<jsta  Mesa,  CA  02b2(i. 

PDI  Announces 
Publication  Of 
Do-lt-Yourself 
Spelling 

Program  Design,  Inc.,  the  (.Green- 
wich. Connecticut,  firm  that 
speciali/es  iii  the  design,  clevelop- 
nienl,  and  marketing  of  educa- 
tioiial  courseware  for  mii:rocom- 
putcrs.  has  just  ]5ublished  a  new 
spelling  program  entitled  DO-FF- 
VOIr'sELFSPEI.I.I\(;.  Cnlike 
other  spelling  programs  on  the 
market,  Do-It- Yourself  Spelling 
allows  the  user  to  add  voice  to  the 
program. 

Do-It- Vomself  Spelling 
allows  teachers,  parents,  and 
other  individuals  to  create  their 
own  spelling  programs.  Following- 
simple  instructions,  the  ]3erson 
enters  a  series  of  10-word  lists 
into  the  computer  program.   Ihe 
word  lists  miglit  consist  of  a 
child's  vocabulary  assignment.  It 
might  consist  of  stfience  words  or 
musical  It'rms  or  e\'en  the  names 
of  liaseball  players. 

Do- It- Yourself  Spelling 
comes  with  a  list  of  1950  words 
that  every  child  should  recognize 


and  be  able  to  spell  liv  (he  time 
he  or  she  graduates  I  rom  Gth 
grade.  The  words  are  {Jigani/cd 
by  grade.  Fhcre  are  50  first-grade 
wortls,  300  words  for  each  o[  the 
second,  third,  and  fourth  grades, 
and  500  words  lor- each  of  the 
fifth  and  sixth  grades. 

Do-Il- Vomself  Spelling  is 
available  for  use  on  Atari  micro- 
computers with  a  memory  of  at 
least  8K.  The  progiani  retails 
for  $19.95. 

For  additional  information, 
contact:  Faurie  Hall,  Program 
Design,  Inc.,  1  !  Idar  Cl.,  Cireeii- 
wich',  C;T  06830  203-06 1-8799. 

Mountain  Computer 
Announces 
RAMPLUS  +  ™  For 
Ttie  Apple  II 
Computer 

Scotts  Valley,  CA  —  Mountain 
Computer  has  just  released  a  new 
dual  16K  RAM  card  for  the  ,'\pple 
ir*.  Two  banks  of  !6K  selectable 
RAM  expand  the  Apple  to  80K  of 
available  memory.  The  second 
bank  of  16K  RAM  is  controlled  by 
user-supplied  software.  Hardware 
and/or  software  selection  of  each 
16K  bank  of  RAM  is  contnilled  by 
the  user.  The  card  also  provides 
its  own  refresh  circuitry. 

Card  installation  is  simple, 
just  install  it  in  any  I/O  slot.  When 
RAMPLUS  +  is  in  Slot  0,  it  emu- 
lates an  Apple  Language  Card®, 
and  you  can  install  multiple  RAM- 
PLUS  +  cards  into  the  same 
Apple  II. 

Status  includes  the  area  and 
bank  of  RAM  selected,  READ. 
READ  or  WRITE  operation, 


NOW  TWO  LOCATIONS 

SAVE  TIME  •  SAVE  SHIPPING 


J^       Computers 
ATARf       «»P«»P»e- 


800,„  «699 


'TM 
410  Recorder 
810  Disc  Drive 
822  Prmlei 
S2b  Prmier 
830  Modem 
820  Prinler 
850  Interface 
New  DOS  2  Syslem 
CX30  Paddle 
CXJO  Joy  Suck 
0X853  16K  RAM 
Microtek  I6K  BAM 
MicroleK  32K  RAM 
One  yair  extsnded  warranty  . 


$59,00 

$444  00 

S359.00 

$629,00 

$15900 

$269  00 

$159  00 

$21,00 

$18.00 

$18  00 

$89  00 

$75  00 

$159.00 

. . .  S5O.00 


ATARI  400 
16K....  $329 
32K. . . .  $478 
-  48K. . . .  $555 

tntac  48K  Board *249 


ATARI  SOFTWARE 

CX404  Word  Processor 

CX404  PILOT 

CX413  Microsoft  Sasic 

CX4101  Invitation  To  Programing  I 

CX4102  Kingdom 

CX4103  Statistics. .  

CX4104  Mialing  LiSI 

CX4105  Biackiach 

CX4106  Inviiation  to  Programing  2 

CX4107  Bioryltim    . 

CX4108  Hangman 

CX4109  Graph  II 

CX4110  Touch  Tvpmq         ■      •■ 

CX4008  SPACE  INVADERS 

CX41 12  Stales  &  Capitals 
CX411'  European  Counlries  &  Capitals 
CX41 15  Mortgage  &  Loan  Analysis 
CX4116  Personal  Fitness  Program 
CX41 17  Invitation  To  Programing  3 
CX411B20CDnversalional  Languages  (ea  i 

CX4121  Energy  Czar 

CXL4001  Educational  Master 

CX6001  17Talk  &  Teacfi  Series  (ea.l 

CX8106  Bond  Analysis 

CX8107  Slock  Analysis 

CX8101  Stock  Ctiarting 

CXL4002  Basic  Computing  Language 

CXL4003  Assembler  Editor 

CXL4004  Basketball 

CXL4005  Video  Easel 

CXL4O06  Super  Breakout 

CXL4007  Music  Composer 

CXL4009  Chess 

CXL4010  3D  Tic-Tac-Toe 

CLS40n  STAR  RAIDERS 

CXL4012  MISSLE  COMMAND 

CXL4013  ASTEROIDS 

CXL4015  TeleLink 

Visicaic  

Letter  Perlect  (Word  Processor] 

Source  

CX481    '■ 

CX482 S109' 

CX483  S54.00 

CX4fl4  $319,00 


$119  00 
$66  00 
$68  00 
$17.00 
S1300 
S1700 
$17  00 
$13  00 
$20  00 
$13  00 
$13  00 
SI  7  00 
$2000 

..  $32.00 
$13.00 
$1300 
$1300 
$59  00 
$20  00 
$45  00 
$1300 
$21.00 
$23  00 
$20.00 
$20,00 
$20  00 
$46,00 
$46  00 
$24  00 
$24  00 
$30.00 
.  14500 
$30.00 
$24.00 
$39  00 
$32  00 
$32  00 
$20  00 
$149.00 

.     $109.00 
$89.00 

$75.00 


PRINTERS 

Centronics  739-1 $649.00 

Diablo  630  Special $1799.00 

^"mXTO S359.00 

MX80 S'tes.oo 

MXeOFT   Call 

MX100 Call 

NEC 

g023 $639.00 

7730.'. Call 

7720 Call 

7710 Call 

g2A  $499.00 

g3ft  $769.00 

14..'.'.'.'.'.'..'. $11 29  00 

Citoh  Starwrtter 

25  CPS-P $1329.00 

45  CPS-P $1699.00 

Paper  Tiger 

445G     t699.00 

460G   $899-00 

560G $1 129-00 

Talley 

B024.7  $1399.00 

B024.L $1629,00 

Xerox  820 

SystemlS'A  $2450.00 

Syslem  118  $2950.00 

CPM5'.  $169.00 

Word  Processing       $429.00 

Super  Calc  $269.00 


Microtek  16K »§J.OO 

32K  $129.00 

lmec32K.: f139.00 

40K        $219.00 

Ramcrom  128K $519.00 

Apple 

Microiek  16K S94.00 

32K $129.00 

Commodore 

64K  upgrade $389,00 

Hewlett  Packard 

16K  upsrade $249 


RAM 
SALE' 


Texas  Instruments 


32K  Expansion 

PHP  Printer  Solid  State. 


,  $329.00 
.$319.00 


TI-99/4A  $379 

PHC  004  Tl  99(4  Home  Computer  $399.00 

PHP  1600 Teleptione  Coupler  $16900 

PHP  1 700  RS.232  Accessories  Interlace  $169.00 

PHP  IBDO  Disk  Drive  Controllet  $239.00 

PHP  1850  Disk  Memory  Driue  $389.00 

PHP  2200  Memory  Expansion  (32K  RAMI  $319.00 

PHA210DR  F   Modulalor $43.00 

PHP  1100  Wired  Remote  ConUollerstPairi  $31.00 


PHM  3006  Home  Financial  Decisions 

PHM  3013  Personal  Record  Keeping 

PHD  5001  Mailing  Lisi  . 

PHD  5021  Ctieckbook  Manager 

PHM  3008  Video  Chess  . 

PHIvl  3010  Physical  Fitness 

PHM  3009  Football 

PHM  3018  Video  Games  I 

PHM  3024  Indoor  Soccer 

PHM  3025  Mind  Challengers 

PHM  3031  Trie  Attack 

PHM  3032  Blasto  .     

PHM  3033  Black|3ck  and  Poker 
PHM  3034  Hustle 
PHM.3036  Zero  Zap 
PHM  3037  Hangman 
PHM  3038  Connect  Four 
PHM  3039  Yahtzee 
PHM  3017  Terminal  Emulator  I 
PHM  3026  Extended  Basic 
PHM  3035  Terminsi  Errnjlator  II 


$26.00 
$43.00 
$60.00 
$18.00 
$60.00 
$26.00 
$26.00 

.  $26.00 
$26.00 
$22.00 

.  135.00 
$22.00 
$22.00 
$22.00 
$18.00 
$18.00 
$18.01) 
$22.00 

.  $39.00 
$86.00 
$45.00 


HOW  TO  ORDER'.  Ptione  orders  invited  or  send  clieck  or  money  order  and  receive  Ifee  shipping  in  the  continental  United  States.  PA  residents  add  6%  s 

computer  mail  order  west 
800-  648-3351 

IN  NEVADA,  CALL  (702)  588-5654 

P.O.  BOX  6689,  STATE  LINE,  NEVADA  89449 


TO  SAVE  YOU  MORE! 

COSTS*  SAVE  SALES  TAX 


Terminals 


Televjdeo 

910 $579.00 

912C  $699.00 

920C  $749.00 

950 $939.00 

Call  lor  computers 

Zenilh  719 $749.00 

Adds   $549.00 


Monitors 


Amdex  12"  B&W $149.00 

12"  Green $169.00 

13"  Color $349-00 

Sanyo  12"  BSW $259.00 

12"  Gfeen $269.00 

13"  Color $449.00 

Tl  10"  Color $349.00 

Modems 

Novalion  Auto $239.00 

D  Cat $169.00 

Cat  $159.00 

HAyes 

Smart  $239.00 

Pioneer  Lazer  DisK $599.00 

BSRX-10Syslems 

PK  500 $84.00 

LM  501 S16.00 

AM61 1 $17.00 

AM286 $17.00 


K  KCOininocloi^B  wo.dP-o3Pius 

^^^•***"    ■    ■■    ■    ■••»«»^»       ««      WordPrd  Plus 

CommodQre  Tax  Pac 

8032 , $1069-00       Visicalc 

4032 $969.00       BPI  General  Ledgei 

4016 $769.00       OZZ  Inlormalion  Sysi 

8096 $1569,00      Dow  Jones  Porlloiio 

Super  Pet $1599,00      Pascal 

2031 $629.00       Legal  Time  Accounli 

a050 $1299.00      Word  Craf !  80 

4022 $599.00       Power 

C2N $63.00      Sockel-2-We 

Jmsam 

Word  Pro  4  Plus $299.00       MAGIC 

Word  Pro  3  Plus $199.00        The  Manager 

Sottrom 


SOFTWARE 


$299.00 

S329  00 

S399  00 

S149  00 

$329  00 

$289-00 

$129  00 

$239  00 

$449  00 

$239  00 

$39  00 

$20  00 

$Caii 

S  Cai 

$209.00 

$129.00 


VIC  20     $259  COMPLETE 


VicTVMadual  $19  00 

Vic  Cassette  $69  00 

Vic  6  Pack  Program  S44  OO 

VIC1530  Commodore  Dalasseile         $69,00 

VIC'i540  Disk  Drive  $499  00 

VIC1515  VIC  Graphic  Printer  $399  00 

VIC1210  3K  Memory  Expander  $32  00 

vici  no  8K  Memory  Eipander  $53  00 

VIC1011  RS232C  Terminal  Inierlace  $43  00 

VICin2VICIEEE-488lnlejlace  $86  00 

VIC1211  VIC  20  Super  Expander  $53  00 


VIC  1212  Programmers  Aid  Cartridge 
VIC1213  vtCMON  Machine  Language  Moniior 
VIC1901  VIC  AVENGERS 
VIC1904  SUPEFISLOT 

VIC1906SUPER  ALIEN    

VIC1907  SUPER  LANDER  , 

VIC1908  DRAW  POKER    ,-, 

VICl90g  MIDNIGHT  DRIVE 

VT106A  Recreation  Pack  A 

VT107A  Heme  Calculation  Pack  A 

VT164  Programmable  Character^Gramegrapnics 

VT232  VICTerm  I  Terminal  Emulator 


$45  00 
$45  00 
$23,00 
$2300 
$19,00 
$2300 
$23  00 
$2300 
$44  00 
$44  00 
$12.00 
$9,00  J 


Add  3%  for  VISA  or  MC.  Equipment  subject  lo  price  change  and  availability  without  noliee. 


computGr  mail  ord€r 
800-233-8950 

IN  PA.  CALL  (71 7)  327-9575 

501  E.  THIRD  ST.,  WILLIAMSPORT,  PA  17701 


186 


COMPUTE) 


FebnjcMV- 1982.  Issue  21 


and  ROM  Enable  or  Disable 
information. 

The  card  is  supplied  with 
16Kof  insialled  RAM  for  $189.00 
The  additional  16K  of  plug-in 
RAM  costs  only  $24.95.  RAM 
diagnostics  have  been  developed 
(on  diskette)  and  are  supplied 
with  the  product. 

For  additional  information, 
contact: 

Mountain  Computer  Inc. 

300  El  Pueblo  Rd. 

Scotts  Valley,  CA  95066 

(408)438-6650 

Calendar/Clock 
System  For  Small 
Computers 

Norcross,  GA  —  Hayes  Micro- 
computer Products,  Inc.,  announ- 
ces the  Hayes  Stack"*  Chrono- 
graph, an  RS-232C  compatible 
calendar/clock  for  small  compu- 


EPSON 


DOT  MATRIX  PRINTERS 

SUPER 
DISCOUNTS 


ON 


MX-80F/T 
MX-80 
MX- 100 


LOWER  I 


LOWER! 


NOW  IN  STOCK 

We  also  stock  cables  and  interface  cards 
for  TRS  80.  Apple,  Atari,  Pet,  and  serial. 


GRAPHIC  ROMS 
AVAILABLE 


TO  ORDER  TOLL  FREE 
1-800-344-7493 

In  CA  and  for  service 
(209)  667-2888/634-8888 


Ai7 


yVWCROTRONICS.inc.    4fi 


1125  N,  Golden  Stale  Btvd 
Turiock,  California  95380 


ters.  The  Chronograph  is  the 
latest  in  the  Hayes  Stack  series 
of  stackable  microcomputer 
component  systems. 

Featuring  quartz-crystal 
control,  the  Chronograph  adds 
the  dimension  of  precise  time- 
keeping to  computer  systems. 
With  the  Chronograph  and  user- 
developed  software,  a  computer 
can  log  programs  and  reports  by 
day,  date  and  time.  Utilizing  the 
computer  alarm  feature,  the 
Chronograph  can  also  provide  a 
computer  with  information  neces- 
sary to  control  lights,  burglar 
alarms  and  sprinkler  systems.  To 
cut  the  cost  of  electronic  mail,  the 
user  can  combine  the  Chrono- 
graph with  the  Hayes  Stack 
Smartmodem  and  a  computer, 
then  develop  programs  to  batch 
messages  during  the  day  and 
send  them  at  night  when  tele- 
phone rates  are  lowest. 

The  Chronograph  is  a  stand- 


alone unit  in  an  aluminum  case 
with  a  large,  easy-to-read  display 
ior  time,  date  and  weekday  re- 
porting. The  display  also  features 
low  battery,  write-protect  and 
alarm  indicators. 

The  Chronograph  reports 
the  time  in  hoius,  minutes  and 
seconds  in  1 2-  or  24-hour  modes. 
The  date  is  output  in  a  year, 
month,  day  format  with  automatic 
leap  year  adjust,  and  the  weekday 
is  output  as  a  single  digit,  0-6. 

Because  it  is  powered  inde- 
pendently, the  Chronograph  does 
not  need  to  be  reset  when  the 
compiuer  is  turned  off.  The 
Chronograph  also  features  a 
battery  backup  to  maintain  time, 
date  and  weekday  for  up  to  a  year 
when  the  power  fails  or  is  discon- 
nected. For  added  protection,  a 
write-protect  switch  on  the  rear 
panel  of  the  Chronograph  pre- 
vents accidental  changing  of  the 
time  and  date. 


Lv-^.  n 
*\  iW  ii\  itp 


Authorized  Commodore  service  center 
Repair  of  the  complete  line  of  Commodore  products 

In  a  hurry?  Check  our  modular  exchange  program 


Computer 


Disc 


HARDWARE: 

CBM  8032  Computer,  80  Column  S  ]  095 
CBM  8050  Disk  Drive  J  340 

CBM  4032  Computer,  40  Column  995 
CBM  4040  Disk  Drive  995 

CBM  4022  Printer  649 

CBM  VIC  20  Computer  263 

CBM  VS 100  Cassette  68 

PET  to  IEEE  Cable  33 

IEEE  to  IEEE  Cable  39 

B^SF  Diskette,  Box  of  1 0  30 


1 

^^  / 

■ 

Printer 

'^il%Jl    ^3 

son  WARE: 

OZZ 

S299 

Wordcraft  80 

299 

Tax  Preparation  System 

380 

IRMA 

380 

Dow  Jones  Poftfulio 

Management  System 

115 

Personal  Tax 

55 

Pascal 

229 

Assembler  Development  Package   77 

Wordpro  4+ 

329 

Order  TOLL  FREE  1  +800-527-3 1 35 

1 0  AM  to  4  PM  GDI  Monday  through  Friday 

Texas  residents  call  1  +2 1 4-66 1  - 1 370 

VISA,  MASTER  CHARGE,  MONEY  ORDERS,  AND  C.O.D.  "Certified  Check"  accepted 

Units  in  stock  shipped  within  24  hours,  F.O.B.  Dallas,  Texas. 

All  equipment  shipped  with  manufacturer's  warranty. 

Residents  of  Texas,  Louisiana,  Oklahoma  City  and  Tulsa,  Oklahoma  must  add  applicable  taxes. 

Eclectic  shortly  will  be  announcing  products  that  are  designed  to  work  with  CBM  systems. 

1 .  ROMIO:  two  RS232  ports— three  parallel  ports -26K  EPROM  memory-managed 
alternate  character  set  software  controlled— EDOS  (extended  DOS). 

2.  Terminal  program  (options  with  ROMIO)       4.  Front-end  processor 

3.  EPROM  programmer  5.  Additional  firmware  to  be  announced 
Be  sure  to  write  the  address  below  for  more  information;  dealer  inquiries  welcome. 


P.O.  Box  1166  .  16260  Midway  Road  •  Addison,  Texas  75001  •  (214)  661-1370 


188 


COMPUTil 


February.  1TO2.  Issue  21 


The  user  controls  the  Chro- 
nograph through  a  command  set 
of  simple  ASC;iI  character  strings. 
These  commands  allow  the  user 
to  set,  read  and  display  calendar 
and  clock  data,  control  the  com- 
puter alarm  and  select  various 
options.  Other  features  include 


300  or  1200  baud  operation  and 
automatic  baud  rate,  parity  sense 
and  word  size  detect. 

The  Chronograph  .system 
includes  the  Chronograph  unit, 
power  pack,  3  AA  batteries  and 
complete  owner's  manual.  It  is 
covered  by  Hayes  two  year  limited 


warranty.  The  suggested  retail 
price  is  $249,00,  For  further 
iniormalioii  contact  Hayes  Micro- 
coni]mter  Products.  Inc.,  jH'Ar) 
Pcachlree  (Corners  East,  Norcross, 
t;A  30092. 


TYCOM  Introduces 
Three  Educational 
Packages 

TYCOM  Associates  announces 
three  new  educational  software 
packages  for  the  Commodore 
PET/CBM  computers,  to  compli- 
ment their  existing  educational 
software  line.  The  programs  are 
intended  for  drill  and  practice  in 
conjunction  with  courses  at  the 
Junior  High  or  High  School  level. 

ALBEGRA  WORD  PROB- 
LEMS: A  CAI  module  intended 
to  help  teach  algebra  students  to 


set  up  and  solve  word  problems. 
A  drill  option  supplies  randomly 
chosen  problems  from  several 
formats,  with  randomly  generated 
values.  The  student  is  given  the 
correct  answer  if  a  wrong  answer 
is  entered,  and  a  score  is  given 
upon  exiting  the  program. 

SPANISH:  Drill  and  practice 
programs  intended  as  a  noun  and 
verb  vocabulary  building  tool. 
User  may  choose  passive  or  active 
mode  of  operation.  Verb  Conju- 
gation drills  are  included. 

GERMAN:  Drill  and  practice 
programs  intended  as  a  vocabu- 
lary building  tool.  User  ma\' 


CBM/PET?  SEE  SKYLES  ...  CBM/PET? 


PET  owners  everywhere  sing 

Jj  Thanks  for  the  Memories  J  J 
to  good  old  Bob  Skyles 

...they  should ...  because  Bob  Skyles  is  the  only  complete 
source  for  memory  boards  for  any  PET  ever  sold.  Old  Bob 
won't  forget  you. 

And  the  Skyles  memory  systems  have  the  highest  qtiality  control  of  any  computer  prod- 
uct ever.  Over  100  million  bits  of  Skyles  memory  boards  are  already  in  the  field;  you  can 
count  the  total  number  of  failures  on  the  fingers  of  one  hand.  First  quality  static  and 
dynamic  RAMS,  solid  soldered  on  first  quality  glass  epoxy.  That  is  why  they  are  guaniR- 
(eed  —  in  spile  oj  the  new  lower  prices — for  a  full  Iwo  yenrs. 

The  boards  connect  directly  to  the  data  bus  on  your  board  with  ribbon  cable  and  50  pin 
connectors  that  keep  the  data  bus  open  to  the  outside  world,  installs  in  minutes  without 
special  tools  or  equipment . . .  just  a  screwdriver. 

Because  of  our  itew  dynamic  memory  design,  and  to  celebrate  the  Skyles'  Third  Annual 
Survival  Anniversary,  here  are  the  smashing  new  prices: 

The  SfC  Memory  System        originally  S250.00       now  S200.00       Save  S  50.00 

The  1 6K  Memory  System      originally  S450.00       now  SiOO.OO       Save  SISO.OO 

The  24fC  Memory  System      originally  S650.00      now  UOO.OO       Save  S250.00 

. . .  For  any  PET  ever  made.  When  ordering,  just  describe  your  PET  by  model  number 

and  indicate  the  amount  and  type  (or  brand)  of  memory  currently  in  the  unit. 

Shipping  and  Handling (USA/Canada)  $3.50    (Europe/Asia)  515.00 

California  residents  must  add  61'i>/6>/:%  sales  lax,  as  required. 


Skyles  Electric  Works 

231K  Soulh  Whisman  Road 
Mounlaln  View,  California  94041 
(415)  %5-1735 


VIsa/Maslercard  orders:  call  lollfree 
(800)  2Z7-9998  (except  California). 
California  orders:  please  call  (415) 
965-1735. 


/lAiaO  ■■•  S31A>1S  33S  6i3d/iAiao- ■  W 


choose  passive  or  active  mode  of 
operation.  Noun  drills  include 
gender  and  plural  forms. 

The  above  programs  are 
available  on  cassette  tape  only  and 
run  on  all  40  or  80  column  screen 
PET/CBM  computers.  Each  sells 
for  $19.9.5.  A  free  list  of  all  educa- 
tional software  offered  by  TYCOM 
Associates  is  available  upon 
request. 

Write  to: 

TYCOM  Associates 
68  Velma  Avenue 
Pittsfield,  MA  01201 

Model  MP150  Wide 
Carriage  Printer 

riic  all  new  Model  MPl 30  printer 
from  MicroPeripherals,  Inc.  is  the 
latest  addition  to  their  matrix 
printer  line.  It  is  the  first  of  a 
series  ol  wide  carriage  luiits  de- 
signed specifically  for  mini  and 
micro  business  systems. 

The  heavy  duty  printhead  is 
rated  for  continuous  duty  and  has 
an  expected  lifetime  of  over 
100,000,000  characters.  It  forms 
characters  bidirectionally  in  a 
logic  seeking  mode  to  optimize 
system  thruput.  Nine  ballistically 
driven  print  wires  form  crisp, 
clear  characters  with  true  descen- 
ders and  underlining  capability. 
It  can  print  a  full  136  character 
line  at  10  characters  per  inch  or, 
by  selecting  either  the  12  or  16.7 
character  per  inch  density,  up  to 
226  columns  may  be  printed. 
This  allows  full  136  column  print- 
outs to  be  condensed  to  fit  on 
standard  8.5  inch  wide  paper. 
Double  wide  characters  can  be 
software  selected  in  any  of  the 
character  densities  to  give  a  total 


Hardware 

•  - 

Printers 

ATARI  400  COMPUTER 

325.00 

EPSON  MX-80 

459.00 

ATARI  825  PRINTER 

589.00 

EPSON  MX-80FT 

569.00 

ATARI  850  INTERFACE  MOD. 

155.00 

OKI  DATA  82A 

499.00 

16KRAM 

69.00 

NEC8023A 

529.00 

32KRAM 

139.00 

IDS  PAPER  TIGER  460G 

895.00 

Software 

Modems 

ATARI  WORD  PROCESSOR 

109.95 

HAYES  MICROMODEM II 

269,00 

MISSILE  COMMAND 

29.95 

HAYES  SMARTMODEM 

229.00 

ASTEROIDS 

29.95 

NOVATION  AUTOCAT 

callus. 

UK  LETTER  PERFECT 

109.95 

DATASOFTTEXTWIZARD 

99.95 

Monitors 

VISICALC 

139.95 

NEC  12"  GREEN 

179.00 

NEC  13"  COLOR 

399.00 

Media 

AMDEK  12"  GREEN 

149.00 

VERBATIM 

25.00  /box 

ZENITH  12"  GREEN 

119.00 

DYSAN 

35.00 /box 

___^_ 

THE  PURCHASING  SERVICE  FOP,  HOME  &  BUSINESS  COMPLFTEaS 

1247  LINCOLN  BLVD.  SUITE  F,  SANTA  MONICA,  CA.  90401    (213)  451-8069 


We  offer  the  most  complere  selection  of  name 
bronds  in  the  country.  SrocH  Items  are  shipped  the 
some  day.  30  day  guoranree.  Your  sotisfoaion 
ond  UNICCMA  prices  mode  our  repurofion. 


of  six  differetu  C^PI  densities. 

A  7x9  matrix  font  is  used  for 
high  speed  data  printing  while  an 
1 1x9  serif  style  matrix  font  is 


used  for  applications  requiring  a 
high  quality  correspondence 
printout.  A  standard  96  character 
USASCIl  set  with  four  strap 


selectable  foreign  fonts  are  stan- 
dard in  each  unit.  Special  fonts 
may  be  either  down-line  loaded  in- 
to RAM  memory,  or  permanently 


190 


COMPUTfl 


Februaiy.  1982.  Issue  21 


located  in  ROM  memory. 

High  resolution  dot  addres- 
sable graphics  capability  is  in- 
cluded for  those  applications 
requiring  plotting,  printing  of 
screen  graphics,  drawing  of  illus- 
trations, and  producing  special 
characters  or  identification  marks. 
Alphanumerics  may  be  over- 
printed into  the  graphics  area 
for  labeling  of  graphs  and 
illustrations. 

Forms  handling  is  imple- 
mented with  a  stepper  motor 
drive  tractor  paper  feed  system 
which  can  be  adjusted  to  accept 
forms  ranging  from  3  inches  to 
15  inches  in  width.  Eight  selectable 
forms  lengths  and  a  Skip-Over- 
Perforation  feature  provide  for 
the  precise  paper  handling  re- 
quired for  business  applications. 

All  printing  and  interface 
functions  are  placed  under  the 
direct  control  of  a  microprocessor 
array.  The  standard  1 K  buffer 
can  be  expanded  to  8K  for  appli- 


cations requiring  additional  char- 
acter buffering.  A  Centronics 
type  interface  can  accept  parallel 
TTL  level  data  at  a  transfer  rate 
in  excess  of  1000  characters  per 
second  using  either  a  Strobe/Ack 
or  a  Strobe/Busy  handshake.  An 
optional  RS232C  serial  interface 
can  be  added  and  will  accept  data 
at  any  one  of  seven  strapable 
baud  rates  up  to  9600.  Both  X- 
ON/X-OFF  and  ETX/STX  pro- 
tocols are  supported  by  the  op- 
tional serial  interface.  The  MP  150 
can  also  be  interfaced  to  devices 
with  an  IEEE  488  Bus  output 
through  an  optional  lEEE-to- 
Centronics  interface  adapter 
card. 

A  long  life  mobius  loop  car- 
tridge ribbon  provides  a  minimum 
life  of  eight  million  characters. 

An  optional  front  console 
panel  can  be  added  to  give  greater 
flexibility  in  changing  the  print 
format  parameters.  It  includes  a 
non-volatile  memory  to  store  the 


PET/CBin  tOmPUTGRS 
Cross  Reference  Program 

FORMATTED  LISTINGS 

, Easy  to  read 

.Multiple  statement  lines  can  be  listed  on  sep- 
arate lines  or  on  one  line,  as  on  the  screen 

LINE  HUMBER  CROSS  REFEREWCE 

.Shows  all  (JOTO's,  GOSUB's  and  ON  GOTO/GOSUB'S 

. Flags  unresolved  branches 

VARIABLE  CROSS  REFEREMCE 

.Shows  allocation  of  all  variables  and  user 
defined  functions 
.Variables  sorted  into  alpha-numeric  order 

CODE  OPTIMIZATION 

.Shows  the  amount  of  memory  wasted  on  remarks, 


*v*\ 


long  variables  and  unneeded  spaces 


SPECIAL    FtAIURtS    FOB     SUPERKRAM     USESS 

Will  work  on  all  PET  2001,  CBM  4032  and  CBM  8032, 

and  4040/8050  disk  drives. 
Specify  your  hardware  configuration. 

Send  $29.95  [includes  postage  and  handling)  to: 
OPPENHEIMER  SOFTWARE 
79  ST.  BOAT  BASIN  139 
NEW  YORK,  N.Y.  10824 
1212)  787-2*16 

PET  i   CBM  are  trademarks  of  COMMODORE  BUSINESS  MACHINES,  INC. 
SUPERKRAM  .s  a    (rademarti  of  UNITED  SOFTWARE  OF  AMERICA  INC 

Dealer  Inquiries  Invited 
NY  Slate  Residents  add  8Vi°i  Sales  Tax 


format  parameters  for  over  three 
months  without  power. 

The  printer  measures  23 
inches  wide  by  16  inches  deep  by 
7.5  inches  high  and  allows  for 
front,  bottom  or  rear  paper  entry. 
It  is  designed  to  allow  easy  access 
to  the  electronic  and  mechanical 
components  for  simplicity  of 
servicing. 

The  MP150  Printer,  complete 
with  graphics  capability  lists  for 
$1095  with  substantial  discounts 
available  for  OEM  quantities. 

For  additional  information, 
contact: 

Frank  W.  Irvin 

Vice  President,  Marketing 

MPI 

4426  South  Century  Drive 

Sah  Lake  City,  UT  84107 
(801)263-3081 

Multi-purpose 
Interface 
For  PET/CBM 
Computers 

TEACHING  TOOLS  Microcom- 
puter Services  announces  a  new 
Nhiki-pinpose  Iiucrface  lor 
PL  r/C:BM  Computers,  lliis 
three-in-one  interface  provides 
the  following: 

1.  Video  monitor  connector.  Lets 
you  show  whatever  is  on  (he 
screen  on  a  video  monitor  also. 
This  is  ideal  for  classrooms,  and 
anywhere  else  a  large  disjjhn'  is 
needed.  A  high  quality  RF  mod- 
ulator (made  by  A  TV  Research) 
is  also  available,  so  you  can  use  a 
TV  in  place  of  a  video  monitor. 
NOTE:  ihe  video  adaptor  is  for 
Ptn/CBM  (ompulcrs  with  9" 
.screens  only,  not  for  80  colunm 
CBMs  or  "Fat"  40  colunm  PFTs. 

2.  Sound  adaptor  with  huili  in 
aniplificr,  speaker  and  volume 
control.  Provides  CB2  sound  (ihc 
standard  for  PL  T/CBM  compu- 
ters). Takes  its  power  from  the 
PET—  no  batteries  needed. 

3.  ,A.udio  tape  recorder  control. 


0 


.<<^ 


.«^^. 


fMi^my^u 


Cx 


O^     rJ^' 


^ 


\P 


# 


CP 


.eo^ 


O^ 


o*lo<*";^ 


,-   >« 

.■^^^k^!*^^^^.--*      ^^^ 


^^*^-  '•:?.'^^ 


..^f  -^' 

^''       _^-:.^<. 


^rfi^l^ 


>-^^%^ 


i»^t?3 


.^s^r^ 


^^^^tcA^^ 


.^C-5. 


'^^  ■ '  •'^ii' 


9f^-': 


^'Wr.r^ 


?\> 


6^^  :<    #^ 


.e 


TAKE  A 

BYTl 


OUT  OF  YOUR 
SOFTWARE  COST! 


JOIN  SOFTWARE  GALORE!* 

THE  FASTEST  GROWING  MEMBERSHIP  BUYING  SERVICE  FOR 

APPLE,  TRS-80,  ATARI,  PET,  IBM,  CP/M  SOFTWARE. 

•Member.  Better  Business  Bureau 

We  would  like  to  give  you  an  opportunity  to  come  on  board  and  become  a 
MEMBER  of  SOFTWARE  GALORE.  The  largest  national  SOFTWARE 
BUYING  SERVICE.  For  a  limited  time  only,  introductory  memberships  are 
available  to  you  at  50%  off.  Now  only  $7.50  (Reg.  $15,00  value)  and  will  be 
good  for  the  period  of  one  year.  Only  members  may  buy  from  SOFTWARE 
GALORE. 

You'll  find  we  stock  the  latest  releases  as  well  as  older  hard  to  find 
software  products  that  most  computer  stores  no  longer  carry.  We  feature 

these  manufacturers: 


4ccon1  SottwaiK 

Coniait 

tus 

SirTech  Soriwaie 

Acof  r>  Solt-ara 

ConllnenHI  Scdwara 

Laier  Syftt«fnt 

SOlUfM 

Activiaion 

D*ninn5/  Lewal  10 

LJK  EnterpriMS 

Solt^ite  Empw'um 

AvanigaidA  Creations 

Daiamoii 

Micro/Lai)    lrlerr;ation.al 

Software  Publishing  Corp 

Dalaaoft 

MicrtjaoH 

ArcadB  Plus 

Daita  Scitware 

Myse 

Slonoware 

Asi&r  Inteinatiorial  Cq 

Denvai  Soliwaie 

On-Line  Systems 

StralQgJcSimuEstiona 

Automated  Sim  jiations 

Optimized  Systems  Software  tnc 

SublogK: 

Avaton  Hill  Game  Co 

Edu-wgfe  Eas.1 

Personal  Sa^lwarB 

SynergiiUc  Soltwero 

B«aglD     Brothers 

Piccadilly 

TO  Products 

e4g     Five     Sotlivflrij 

GiQstrontcs 

PhD«n<x  Soflwate 

The  Book  Company 

BrodB'bund  SoUwarB 

HiydBn  Soliwaio 

Quail  ly  Soflwirfl 

ThftComAotl  Groijp 

BudgBco 

Hiflhlandi  Ccmpuler  ServiCo 

Riwerbank  Soflwa  re 

Tr*e  Logical  Choice 

Caiilomki  Pacific 

Howard  SoltwprQ 

Sensrtste  Software 

Turnhey  Software 

Cawsliar  CompuWr 

Infocom 

Seniiertt  SoUtware 

Uni»d  Software  oi  America 

Comoutei  M«0)£  L,td 

■innovHlivw  Desifln  Soltware 

Sierra  Soltware 

Versa  Compulmg 

Sinus  Sortwarfl 

videpf  Inc 
VoyjBB'  Software 

Other  "Discount"  outlets  "Blowout"  a  few  items  to  get  your  business 
then  charge  you  100%  list  price  for  everything  else. 

At  SOFTWARE  GALORE,  you'll  save  a  full  20%  OFF  RETAIL  on 

everything  you  buy  and  be  entitled  to  these  additional  services: 

•  An  Additional  5%  off  on  your  first  single  item  purchase. 

•  Access  to  the  largest  inventory  of  software! 

•  Low  handling/shipping  charges. 

•  Overnight  shipments  by  U.P.S. 

•  90  day  guarantee  on  all  software. 

•  Personalized,  efficient  service. 

Software  Galore  bacl<s  its  commitment  of  service  and  quality  to  its 
members  with  a  90  day  unconditional  warranty.  You'll  never  get  stucl< 
with  a  lemon  from  us. 

Catalogs  and  inquiries  call  our  Toll  Free  Numbers: 

1  -800-772-2666  x  989  (in  Calif.)     t  -800-227-2634  x  989  (outside  CA) 

FOR  IMMEDIATE  ORDERS  CALL  21  3-827-1851 


Enclosed  is  0  7.50  (fori  yr.)  D  20.00  (for  2  yis.)  sign  me  up  immediately  and  send 

a  catalog,  membership  pack  and  order  forms. 
D  Please  send  me  a  catalog  and  application  only.  I  am  under  no  obligation  to  buy. 


Name:  D  Mr.  D  Ms.. 

Street; 

City; 


Type  of  Computet  Used: 

Mail  to;  SOFTWARE  GALORE 


_Stale:_ 


-Zip:. 


P.O.  Box  10005,  Marina  del  Rey,  CA  90291 
Or  Call:  1-800-772-2066  x  989  (in  Calil)      1-800-227-2634  x989  (outside  Calif.) 


Lets  you  add  recorded  iiiessage.s 
to  your  programs  —  pul.s  .starling 
and  stopping  a  cassette  recorder 
under  program  control. 

The  innlii-purpose  interlace 
easily  plugs  into  the  hack  of  the 
PET/CBM.  H  desired,  ii  can  be 
clamped  from  inside  the  PF,  I",  so 
tlial  it  cainutt  be  renioNfd.  ('om- 
plei^e  insiruciions  are  included 
for  connecting  the  interface,  and 
for  u.sing  C1B2  somid  and  tape 
recorded  messages  in  )oin'  own 
programs. 

Prices:  Multi-purpose  inter- 
face, {requires  cable  with  RCA 
phono  plug  at  one  end,  connector 
for  vour  moniloi"  on  1  iie  odier 
end)  $l()i:).*).3.  Mulii-purpo.se 
interface  and  RF  niodiilaK^r 
{includes  all  cables  and  batteries 
for  modulator)  ."B  149.95.  Sample 
copy  of  instructions  (credited 
loi\;ucl  later  [lurcliase)  .15 1.00. 

Please  atld  -SI'S. 00  lor  sbijjping 
and  handling. 

Foi'  prices  in  C'anada,  contact 
SES  Clonipuling,  4(Ky  King  Stieet 
Fast,  Suite  9,  Toronto,  Ontario 
M5A  lUi  (4 1 0-336-4242). 

Axlon  Personal 
Communication 
Terminal 
Announced 

Snnu\\ale,  V..\  —  November  19, 
1981  —  .Vxlon  Incorporaled  of 
Stmnyvale,  today  announced  the 
release  of  its  portable  i^ersonal 
communication  terminal  for  the 
home  and  business  maikei. 

Called  the  A.Klon  IIOI- 
LINty  Per.sonal  Conmuniication 
terminal,  it  can  Ijc  used  to  trans- 
mit and  retrieve  information 
from  data  bases  as  varied  as  a 
personal  telephone  directory  to 
the  Xew  York  Stock  Fxchange. 

The  Axlon  HOTI.INF  Per- 
sona! Comnumication  Terminal 
measures  1  V«"'  x  ?>''/](<"  x  6'*/i"  and 
weighs  less  than  1  1  ounces  pro- 
viding a  truly  portable  means  to 
commimicate  with  host  computer 


PRICES  QUOTED 
OVER  THE  PHONE 


Call  Toll  Free  800-343-5691 


NEC 


The  end  of  the 
compromise. 


PRICE  EXAMPLES: 

ATARI  800  with  16K  memory 

$749 

ATARI  400  with  16K  memory 

$329 

ATARI  810  Disk  Drive 

$439 

ATARI  Software  10%  OFF 

NEW:  Pro  Football  16K  (Cassette) 

$795 

Galactic  Chase  (Disc) 

$29'^ 

Ghost  Hunters  (Disc)  $343*     (Cass 

)  $29^5 

ATARI  410  Recorder 

$65 

A 

ATARI 

Computers 
for  people: 


■  Mdhs..  res.  S  A.  salfb  lax 
•  iTK'udtf  cht'ck.  niortty  ordot. 
MasleiCharye  ot  VISA  numbtr 
We  ship  by  best  means 
possible  Ireiglii  collecl 


WARHBH'S  *'<»"••""» 


SYSTEMS 


Mass.  res. 
(617)843-1133 


4  Elm  SL,  Braintree,  MA  02184 
PlMse  Dial  800-343-5691 

SEND  FOR  CATALOG 


OLYMPIC  SALES  COMMNY 


^^   Authorized  iJealer 


iKippJG  Gomputxzr 

;^^^,  .„_^        NEW  APPLE  FAMILY  SYSTEM 

■       inve'ntorv   :ZS„L\i.    ""-'■s^^s.oo 

LOWER.THAN.  :  Kduir,  ^'" '"■ 

ever  PRICES    .  7  Personal  &  jarae  disks  ^EST  Price! 

LirM  Invmtorv  ot: 
DiikHfiih  Eoniroltir  005  3.3 
Stcond  Dnk  Dtnn 
Fiial-Faitrin-Cofaol  l»ngu»gii 
Dow  ionn  &  Qu^tt  rtpoKfr 

ViMakfat  Appk  II  &  III 
Snufltf  m  BO  cabmn  md 
Mcromodim  tl  by  OC  Hjvn 

WE  AiLSir CARRY  SOFTWAflE' 
Pnuiul  SoftwHi  Iniontm 

bch  Tim  ScfTHKE      AiTwign 

Macpro  ind  moil. 

«H  H^'^^nUhqriJrt  i«r%icjiif  Appli  julrr  !«  Ap^lt  II  A  III 
'TT^*'*  "™'f  ■"  •"  *rfdl-*t  Hrty  in  (norflltiiit  mwnljnr 
>f  Apptt  prtJuni  11  111  riirvt" 

Juit  Mimc  a1  tlie  softwire  tn  nock  NDW- 
Mtpfc  W/ndoM.  fiausf  Blaittr,  Uivma.  Home  S  Mmoer 
Tax  Preparer.  Pool  1.5.  Typing  Tuxor,  Olympic  Oetafft- 
aSon.  ABM,  floOor  War,  Caitle  Wo/f^nsrefr},  Cranston 
Manor.  £x/»d,'ier.  Oo  Topos,  Cyborg.  Gorgon, 
f^ekons.  Wizardry.  Penonaf  filing  System.  PFS: 
B«port.  flight  Simulator.  .  . 


TexQs  Instruments 

,''rjwl,:°?,';ri;.,.,,   H"-™--  Computer 

ll-ma  (J/L  du  e,  monl 

NmKEVeOABO  .  -■:     ... 

$Ocn95 


'369^ 


S95G.0a    $?69.95! 


kcYboird 

ja'colaimonUDilai  99/4  "**^'^"  650  00  319.95 
22K.  E«p.  mem  modult  39g  35  31495 

Exrended  eisic.  a  MUST  lor  iCO  QQ    75,00 

32k  module 
Sp(tch  lynihriiiei  tSOOO  179  9S 

Disk  memorv  dri¥«  500,00    397  95 

Rf  mDduljTDr  69  6D     49,50 

Tfkphonf  CE3upltr  (modem)  22b  QQ  119  95. 

Pipnur  isDlid'Uia)  400.00  319.95 

Wf  carry  «  \tiqt  in'bcnint^  of  loftwir*,*  aetefuiin 


ESa 


HEWLETT 

PACKARD 

up  1 1  r 

Adnnctd  Prognmnnble  )f°"^  ^°*'' 

Scitntiht  ICa  firwl  SiMOO   S1 14.95 

HP-1  ?r 

Ad«nMd  Pro„immibli  '^^Hf^^J*' 

Firunciil  LCD  ReailiilSO.OO  $129.99 
HP-12S  New  MieiacDmpuln       ftsUi!  Your  Cqu 
S4K  CPUrrirminll/Ktybeiid  3750  DO  SISi.DO 
KP-a5     MiffoeompuKf- 
budt-m  prinier/monilar  3250.00  2499.00 

HP-e3  UiuocDia-ijiiitl'in  man  2250.00  17<)9.l!0 
HP3B31BPrinit,,diilmtij  395C,«1  3199.IK1 
KPt2995A80ciilpi.nlH  945.00     755.00 

HP'2ea  I A  Leitir  guility  prter  H7/iM 

HP4290tU  Dual  misur  25 W.OD  1999.00 

C4II  u»  tor  tbf  lowQt  prkci  on  7  disk  dtives 


Mattel  1670  Race  Horsi  Computer 
Rei,  5125.00  y/C;  $24.95 


2450.00  2ilt9.j» 

750.00  (38.00 
2050.00  1S99.0a 
325.00     25G.00 


Grijihiapl<itt«i7Z2S 
PerWMlity  modut*-i  must 
Isr  722i 
G[iph«iTiblet9111A 
HP4I CV 

Ctid  Ruder  for  41  CV 
pTiiitir1ar41CV 
Quad  Rim 

0plicilW<ndfcr41CV 
HP4t  C  Cjlculjtur 
McmqiY  mDd.  loi  A1C 
HP.97  Pragimbit  punier 
HP34CPrijjrmHtsii[ntiltc 
HPllCPragfmblihuiiniu  R/E 
HP-J2E  Ad¥«nMd  icienlilic 
HP  17E  Guiifins  manlgemcnl 

W(  ciriv  a  complete  inwemof y  of^— 

Libniies  accessories  &  supphet. — 


215.00 
385.00 
95.00 
125.00 
260,00 

750  00 
150  00 
150  00 
5500 
;5  00 


171.00 
294.00 
34.95 
99.95 
188.95 
2G.9S 
579  95 
117.96 
119.95 
4B.95 
5S95 


COMPUTERS 
iodei""  Rerail    Your  Cost 

fOO    16K  1080.00     759,95 

BIO    Disk  Drrve         600.00     469  9S 
AMrr  VrsiCalc  200.00     169  95 

925    Impatl  Printer  1000,00     779.95 

(Ceniriinics737l 
SUPIR  SPECIAL-ATARI  400  I16KI 
Retarl:S595.00         Your  Cost  S339.95 
Language  Cart,  tier  deluded- Opi'l  3JS54  95 


ATARI 

Programmibk 

Color  TV  Game 

Video  Console: 


Rami  5225. DO 


5137 


95 


I^XUTTiL  fLEt-rBDnira 

llVtEUiViSiON 

95 


flfta./S325,00    S' 
Your  Con 


234 


VIDEOTAPES 

Win  order;  3,  mined  DK 
SONY       L5DD  2  ht  S11.S9 
SONY        L750    3hr      14.G9 
RCA       VK250EI1C     13.95 


TEXAS  INSTRUMENTS 

Retail 

You  Pav 

TI-59          295.00 

179,95 

Tr-Slll  LCOSmSlidimEW  ll,H 

T|.35SPl.COSci 

2!,S« 

TI-WLCOSci/NEW 

II JS 

Biii.  Anal.  1 

II.H 

Bui.  Anil,  ri 

M,>t 

Blll.CaiC 

■an 

MBA 

H.» 

lnv«l,AMl,H 

41  tf 

Tr.MAiH.  LCSScKNEW 

n.K 

Tl.SStI  NEW 

44ja 

Tr.S7PlO(.Sci 

9.tS 

TrSECiMSMp.Proj. 

n.ti 

PC  100c  PilntfflDl 

i«aj( 

LCO-Pro(fimiiiar/N£W 

srw 

OHIO  SOIEMTIFIG 


ProfSiUOnj!  Co'nfitifen 
CfiPDF-48K 


Reiani  Vour  Cast 

3495.00  3195.00 

□  ual  8"  Drives     *64  col  «  32  line/cDloi 
,7  MIPS     f^l.SV'aManv  irvoie  itnitard  'eatrrs 
Fortran  &  Paical  avarlable 

-^t  ijiszounleii  puces,  at  couiie' 


Miiniw|  Main  SKoMtoom  &  Offices 
^MJ[  216Souih  Oxford  Avenue 
Las  Angeles,  CA  90004 
WE  HONOR 


VISA  and  IVIASTERCHARGE 


TELEX:  67  34  77 

ORDER  DESKS  open  7  DaysaWeeki 

7:00  AM  to  7:00  PM  IVion  (hru  Sat 

Sunday  Noon  to  5:00  PIM 

Ordei  Desks:  (213)739.1130 

TOLL-FREE  TOLL-FREE 

(outside  Calif.)  (withrn  Calif ) 

800-421-8045        800  Z5Z  2153 


An  goods  subject  to  availsbihty;  ihn  sd  si/p'  ' 

ledei  all  prevous  ^di;  we  at s  not  "^iponntjlr 

tar  typographical  errors,  we  rvtti  mncl  or  br  f 

any  actverntsd pftcsi  'f  the  cornpvt'ttan  hj-, 

tt>e  gaodi  on  hand. 

Hiifi'mum  ihipprng  ^nti  handling  S4  95, 

All  orders  $uljfect  to  wrificatron  JtndaCcvplji 


EPSON  PRINTERS 

MXSO 

Optional  Oraftrax  Chip  £0 

MXBO  FT 

MX100 


Retail:    Your  Cost 

645.00       499.00 

95.00 

745,00       599.00 

_995.CiO       749.00 


DIABLO  630 

letter  QuililY 
diiiY  wliecl 
vr7tiictaii 
neiiil  13355.00 
rlC:  S2S95.00 


PAPfFnCTRTStSTTMs^ 

460  995,00  Il9i,01) 

4900  griphics  1094,00  969.95 

560  129500  11199,00 

5600  graphics  I394,0D  1195.00 

445  795.00  695.00 

445G 894,00  799.00 


SANYO  MONITORS 

13"  Coint  Inm)  higli  ijtjalitY 
12"  Green  phosphoiaus 
12  '  Black  Swhni 
IS"  OlaciiS  Willie 


High  resolution 

550  CI)  419.95 

360  OQ  259.9S 

340  00  239.M 

170  00  259.95 


ilict^whiitftlnbuMelirfil       ;j5  0n        169.95 


AMOEK(Leedex)High  aualKy  Monitors 

100       12"S7V»,lZMHi  179  00  139  95 

1DD-G    12"  Gtttn,  12  MHi  199  00  174  95 

JOO-G    12"  Grttn.  It  MKi  749  00  199.95 

Color  1 13"  Color.  NTSC  comp.  input, 449  00  339  95 


1W 


COMPUTII 


Febnjoiv,  1982.  Issue  21 


systems. 

The  terminal  combines 
st;Ue-()f-tlie-art  features  such  as  a 
built-in  modem  witli  more  fam- 
iliar ieatures  iiicluclin^  ati  alpha- 
luimeric  keyboard.  The  tactile 
keyboard  consists  of  43  functional 
keys  arranged  in  typewriter 
sequence  and  provides  a  64  upper 
case  ASCni  character  set.  The 
display  is  a  16  chaiaclei'  fluores- 
cein display  \vhich  is  tilted  for 


nXLOtl    HC.'L  Itib 


DdBaaaonQDj 
aoQDaciEiania 
Q  D  H  a  wstSM  a  □  CI  ~ 


viewing.  The  terminal  offers  a  96 
character  display  memory,  which 
can  be  scrolled  16  characters  at  a 
lime,  and  a  16  character  display 
memory  in  the  transmit  mode. 

The  Axlon  HOTLINE  Per- 
sonal (Communication  Terminal 
is  designed  for  ease  of  use.  The 
user  ttials  the  data  base,  waits  for 
the  connect  signal,  and  then 
connects  the  modular  headset 
jack  to  the  terminal's  modular 
telephone  receptacle.  The  termi- 
nal also  has  a  receptacle  for  con- 
nection of  an  ASCII  serial  printer 
should  the  user  require  hard 
copy  of  information  retrieved. 

For  more  iidbrmation  con- 
tact John  V'urich  or  Robert  Sulte- 
meier,  Axlon,  Inc.,  170  N.  Wolfe 
Rd.,  Sunnyvale,  CA  94086. 

Medical  Package 
For  Apple  III 

Moninnent  C>omputer  Service 
has  released  a  new  software 
apijlications  ibr  (he  Medical 
Profession  running  on  the  Apple 
III  Computer,  riie  package, 
called  the  Metlical  Clinic,  runs 
under  the  SCXS  operating  system 
and  is  written  in  Business  Basic. 
The  package  is  designed  for  the 
multi-practitioner  medical 


practice. 

The  package  manages  the 
ph\sician's  appointnietit  sche- 
clides,  does  patient  rec all,  ]3ie- 
pares  appointment  logs,  and 
provides  for  patient  file  manage- 
ment. The  system  also  has  a  full 
accoimts  receivable  system  for 
managing  daily  irairsactions  and 
payments,  preparing  monthly 
client  bills,  and  reporting  aged 
accoimts  receivable.  The  Ijilling 
element  also  prepares  standard 
AMA  approved  claim  forms. 

The  system  will  handle  a 
virtually  unlimited  patient  base 
using  either  mini-Hoppv  diskettes 
or  I  he  latest  A]jple  hard  disk. 
The  system  is  designed  to  im- 
prove professional  cash  (low  with 
such  features  as  a  suijerbill, 
individual  bill  preparation  and 
cycle  billing. 

The  package  is  available  foi 
.1?  1,495.95  complete.  A  demon- 
stration manual  is  also  available 
for  $.')().()().  Additional  inlorma- 
lion  is  available  from  Monument 
Cionqjuler  Service.  Village  Data 
Center.  P.O.  Box  603,  Joshua 
Tree,  CA.  92252.  Technical 
questions  and  dealer  inquiries 
should  be  directed  to  (7  14)  365- 
()(>68.  Additional  written  infor- 
mation is  available  from  the 
order  center  at (SOO) S54-0561 
Ext.  802  (In  Cahforma  call 
800-432-7257.) 

Business  Planner 

Duosoft  Corporation  introduces 
BUSINESS  PLANNER,  a  mod- 
eling package  for  entrepreneurs 
planning  to  start  or  expand  a 
new  business. 

Designed  to  help  develop 
viable  business  plans,  the  pro- 
gram groups  labor,  equipment 
and  other  costs  into  income- 
related  projects. 

Projects  are  combined  into  a 
model  which  generates  graphical 
projections  and  estimated  finan- 
cial statements. 

By  exploring  alternate  mod- 
els, you  can  evaluate  critical 


timing  and  resource  allocation 

decisions. 

"What  If  scenarios  help  you 
plan  for  the  future  and  respond 
appropriately  to  chatiging 
demands. 

You  can  compare  actual  re- 
sults against  the  model  in  order  to 
focus  attention  on  jjioijlems  that 
may  harm  future  performance. 

BUSINESS  PLANNER  is 
now  available  for  the  Apple  II 
and  III,  and  will  soon  be  released 
for  other  machines. 

For  Rnthei-  inlormation: 
Duosoft  Corporation,  Box  1827, 
Champaign,  Illinois  61820. 

Pascal  Procedures 
For  Business 

Users  Pascal  Procediues  Ex- 
change Register  (UPPER)  has 
aimoimced  the  release  of  "The 
Most  Commonly  Re-created 
Pascal  Procedines  for  Business 
Application  Programmers."  This 
booklet  ccmtains  UCSD  p-System 
Pascal  somce  code  for  user- 
friendly,  bomb  proof:  screen 
input,  access  methods,  printed 
report  formatting,  text  foi-mal- 
ling,  data  type  conversions,  and 
sample  shell  programs.  These 
procedures  can  be  incorporated 
into  library  units,  segments,  or 
used  as  in-line  code. 

Price:  $19. 95.  Available 
from;  Users  Pascal  Procedures 
Exchange  Register,  1372  East 
52nd  Street,  Chicago,  IL  606 1 5. 

Financial 

Modeling  Software 
Package 

Osborne/McCraw-Hill  has  an- 
nounced plans  lo  distribute 
MicroFinesse,  a  fmancial  mod- 
eling software  package,  with 
initial  shipments  to  dealers  com- 
mencing January,  1982.  This 
move  marks  a  major  thrust  by 
the  McGraw-Hill  Book  Company 
into  software  distribution. 


Lyco  Computer  Marketing  &  Consultants 

We  Specialize  in  Quality,  Knowledge,  Service,  and  Microcomputers 

717-435-5197 


ATARI 


I A  Wtrnef  CommunicatiCKis  Comoany 

IC!19B1    ATAHI   INC 


February 
Specials 


*  » 


*  #  *  * 


PROGRAMMING  SOFTWARE 

CX41 01  INVITATION  TO  PROG S    1 7.00 

CX41 06  INVITATION  TO  PROG.  2 S    1 9.00 

CX41  1  7  INVITATION  TO  PROG.  3 $    1 9.00 

CXL4003  ASSEMBLER  EDITOR $   42.00 

CXL4002  ATARI  BASIC  CART $   42.00 

CXL4015TELELINK $    19.00 

EDUCATIONAL  SOFTWARE 

CXL4001  EDUCATIONAL  SYSTEM S   1  9.00 

CX6001  U.S.  HISTORY $  22.00 

CX6002  U.S.  GOVERNMENT $  22.00 

CX6003  SUPERVISORY  SKILLS $   22.00 

CX6004  WORLD  HISTORY S   22.00 

CX6005  BASIC  SOCIOLOGY $  22.00 

CX6006  COUNSELING  PROCED S   22.00 

CX6007  PRINCIPLES  OF  ACCT S   22.00 

CX6008  PHYSICS S   22.00 

CX6009  GREAT  CLASSICS S   22.00 

CX601  0  BUS.  COMMUNCIATION S   22.00 

CX601 1  BASIC  PSYCHOLOGY S   22.00 

CX601  2  EFFECTIVE  WRITING S   22.00 

CX6014  PRINCIPLES  OF  ECON S   22.00 

CX6015  SPELLING S   22.00 

CX6016  BASIC  ELECTRICITY S   22.00 

CX601  7  BASIC  ALGEBRA S   22.00 

CX4108  HANGMAN $    12.00 

GX41  1  2  STATES  &  CAPITALS $    1  2.00 

CX41 1 4  EUROPE  COUNT.  &  CAP S    1  2  00 

CX4121  ENERGY  CZAR $    12.00 

CX41 23  SCRAM $    1 2  00 

CX41 02  KINGDOM S    1  2.00 

|CX4103Slatis(ics ■S    17  7<^ 

CX4104  Mailing  List,..  ^    \-,J^ 

CX4105  Black  Jack S    1'i.i 

CX4107Biorhythm »    /-,'% 

0X4109 Graphit J   ]'C^ 

CX4110  Touch  Typing..  t    ILit 

ICX4121  Energy  Czar j   .^2  75 


32K  MEMORY  BOARDS $149.00 

16K  MEMORY  BOARDS $75.00| 

for  ATARI  400  &  800  with  1  year  warranty  I ! 

^  ATARI  800  16K $659.00| 

■^  ATARI  400  16K $329.75| 

ATARI    HARDWARE 

410  Cassette  Recorder $57.75 

810  Disk  Drive $444.75 

850  Interface $165.75 

330  Modem $145.75 

825  Printer $625.75 


ENTERTAINMENT 

CXL4004  BASKETBALL $ 

CXL4005  VIDEO  EASEL $ 

CXL4006  SUPER  BREAKOUT S 

CXL4009  CHESS S 

CXL4010  3-D  TIC-TAC-TOE S 

CXL401 1  STAR  RAIDERS S 

CXL4012  MISSILE  COMMAND $ 

CXL401  3  ASTEROIDS $ 

CXL4008  Space  Invader ^ 

CXL1007  Music  Composer ^ 

0X4118  German * 

GX41 19  French ^ 

CX4120  Spanish * 

CX4125  Italian * 


29.00 
29.00 
29.00 
29.00 
29.00 
30.00 
30.00 
30.00 

30.75 
42.75 
42.75 
42.75 

42.75 

42.75 


ACCESSORIES 

CX30  PADDLES $    17.00 

CX40  JOYSTICKS $    1 7.00 

CX853  1 6K  RAM $  85.00 


WE  CARRY  MANY  OTHER  LINES  OF 

MICROCOMPUTERS  YOU  CAN 

CALL  FOR  PRICES  ON: 


CPU's 

COMMODORE 

ALTOS 

TEXAS  INSTRUMENT 

ZENITH 

INTERTEC  DATA 

AND  OTHERS 


PRINTERS 

TEC 

DIABLO 

NEC 

EPSON 

ANADEX 

AND  OTHERS 


At  Lyco  Computers  we  offer  our  expert  services  to  help  customers  make  their  first  computer  purchase, 
schools  establish  a  computer  program,  or  evaluate  multiterminal  systems. 

to  tielp  evaluate  your  needs,  or  if  you  wish  to  rnake  a  purchase. 

I  ORDERS  SHIPPED  SAME  DAY 

CALLUS       AT     717-435-5197 


LYCO  COMPUTERS 

P.O.  BOX  10 
COGAN  STATION,  PA  1  7728 


NO  COD  CHARGES 
WE  PAY  FREIGHT  ON  PRE-PAID  ORDERS 


196 


COMPUTE) 


February,  1982.  Issue  21 


Written  in  Pascal,  MicroFi- 
nesse  runs  on  the  Apple  II 
niicroconipiiier  and  will  be  ciis- 
tributed  by  Osborne/McGravv-Hill 
in  the  L'S  anfl  Cianada  only.  'Ihe 
complete  menu-driven  package, 
with  dottmientaiion,  will  sell  for 
S495.()(),  availalile  primarily 
tlirough  relail  c(>m]jutei'  stores. 

A  financial  modeling,  tbre- 
casiing  and  decision-making 
system,  MicroFinesse  was  devel- 
oped by  the  P-E  Consulting 
(iroiip,  one  ol  F.ngland's  (op 
management  firms,  with  over  10 
years  experience  in  financial 
modeling. 

According  to  Martin  McNifT, 
Technical  (iroup  Manager  at 
Osborne/McCiraw-Hill,  Micio Fi- 
nesse is  more  than  a  spreadslieet 
package.  "It  offers  planning 
ca|)ahililies  seen  before  only  on 
much  larger  systems,  such  as  the 
ability  to  create  investment  and 
financial  alternative  models,  as 
well  as  pro  forma  statements, 
sales  productivity  or  profitability 
[brecasis.  LIsers  can  define  targei 
figures  and  use  MicroFinesse  to 
determine  what  must  be  done  to 
nieei  those  goals,"  says  McNif  f . 
lie  also  points  to  the  program's 
color  graphics,  model  consolida- 
tions and  re]j()ri-generating 
features. 

A  signiticanl  commitment  to 
af  (er-sale  support  has  also  been 
announced  by  Osborne/McCiraw- 
Hill,  including  a  dedicated  toll- 
I'ree  telephone  "hoi  line"  which 
will  be  in  place  at  the  time  initial 
shipments  commence. 

For  moix'  iniormation,  please 
contact:  Chris  Chambers,  .Sales 
and  Marketing  Director,  Osborne/ 
McCiraw-Hill',  (4  1.5)  548-280.">. 

Prism  Printer  From 
Integral  Data 
Systems 

A  new  color  printer  user-priced 
at  $  1 ,995  has  been  introduced  by 
Integral  Data  Systems  of  Milford, 
New  Hampshire.  The  Prism 


Primer™  is  a  low  cost  commeicial 
color  printer  designed  to  compete 
with  units  costing  three  times  as 
mucli. 

I'he  new  l32-(olinim  dot 
matrix  printer  will  produce  eigfu 
colors  using  a  tour  band  ribbon 
which  carries  the  process  colors 
of  cyan,  magenta  and  )ellow,  as 
well  as  black. 

"It's  going  to  Iielp  define  the 
expanding  color  gra])hics  mar- 
ket," says  Peter  R.  ELsenhatier, 
Integral  Data  Systems  Vice  Presi- 


mode,  the  unit  prints  overlapping 
high  density  (24x9)  matiix  char- 
actets  al  up  lo  150  charatters  per 
second,  bidireclionally.  I'he 
high-speed  <lata  mode  enables 
the  user  to  select  a  standaid 
density  matrix  and  output  large 
volumes  of  claia  at  print  speeds 
in  excess  ol  200  cps. 

Standard  featmes  include 
proportional  spacing,  enhanced 
(bold)  text  printing  and  standard 
print  densities  of  10,  12  or  16.7 
characters  per  inch.  The  Prism 


dent  ol  Marketing.  "There's  a 
demand  for  color,  primarily 
among  business  and  professional 
users."  Other  inmiediate  applica- 
tions for  the  printer  include  the 
visual  translation  of  scientific  and 
medical  data. 

In  addition  to  the  color 
primer  itself.  Integral  Data  has 
plans  to  offer  a  number  of  collal- 
eial  products  which  will  facilitate 
the  use  of  the  Prism  Printer  in 
many  key  system  environments. 
The  first  is  expected  to  be  an 
interface  card  ioi'  the  .Apple  II 
and  III  which  will  have  a  graphics 
driver  for  the  color  printer  resi- 
dent an  the  card.  Other  products 
in  the  works  incUide  additional 
software  drivers  for  A|jple  prod- 
ucts as  well  as  a  coloi/graphics 
driver  for  the  recently  announced 
IBM  Personal  Computer. 

4  he  Prism  Printer  offers 
semi-automatic  cut  sheet  feed, 
also  a  high-speed  data  mode.  In 
the  normal  (correspondence) 


Printer  prints  a  full  132  charac- 
ters per  line  at  10  pitch  (charac- 
ters per  inch)  with  other  pitches 
giving  line  lengths  up  to  220 
columns  on  standard  15-inch- 
wide  EDP  paper. 

Selectable  features  include 
automatic  text  justification,  pro- 
grammable hori/ontal  and  verti- 
cal tabbing,  reverse  paper  feed, 
and  "fine  positioning"  of  charac- 
ters of  l/120lh  of  an  inch.  While 
the  Prism  Printer  employs  the 
standard  .\SCI1  upper- and 
lower-case  9fi-characler  set.  up  to 
four  different  96-character  sets 
can  reside  within  the  printer  at 
the  same  lime,  for  foreign 
language  or  custom  character 
printing, 

'Fhe  Prism  Printer  is  micro- 
processor controlled,  with  true 
"logic  .seeking"  look-ahead  capa- 
bility and  a  high-speed  slew  lor 
maximum  output.  It  has  a  stan- 
dard RS-2;'52C  serial  interface  as 
well  as  a  Centronics-compatible 


APPLE  •  ALTOS  •  ATARI  •  MAXELL  •  DYSAN  •  EPSON  •  CCS  •  SHARP  •  CASIO  •  HP  '  VERBATIM  •  MEMOREX  •  SOROC  •  CORVUS  •  ADOS 


/x/iicno 


E 


BUSINESS  WORLD  INC. 
Information  Line  (213)  996-2252 
TOLL  FREE  MAIL  ORDER  LINES 
(800)  423-5886  Ouisidc  c^hi 


SHARP 


mmm    .^  _^. 

M        ^^ 

•5.25"  diskette 

•  28JK  byte  per  disk  drive 
'  2  disk  drives  per  unit 

•  Expandable  up  to  4  units 

•  Including  SHARP'S  FDOS  (Floppy 

•  Disk  Operating  System) 

MSL       OUfi  PRICE  40^^nt\ 

""°°$3995.00s>  . 


iRfll  HEWLETT 
tLCM   PACKARD 

Ouj  ^ 

llsl 

Price 

HP  125  MicriiconpiitEi 

3750  00 

2990.00 

HP-85  Hictocamoutef 

3250,00 

247500 

rtP-33  MKrwomputei 

225000 

1777,00 

ISKE.pMsmoij  Haiule 

295.00 

255,00 

Cnphics  Plollei  ?2J5 

245000 

2075.00 

Pcsocality  MoJ  For  121i 

75000 

«500' 

JS3ie  InipjcUPiicitejl 

Hv»Ot( 

395000 

325000 

Opbgn  020  Fci  2(3ie 

15000 

125-00 

S  Ormes  to  Choose 

hm  82902$ 

noo.oo 

1125.00 

M95A  8-  Dual  Drive 

C859.00 

S500.00 

Graphics  libW  9 lllA 

2050.00 

1678-00 

HP-UC  Slim  Lin!  MtlKtiS 

13500 

119.M 

HP-12C  Slm-Line  Firuncial 

15000 

129.00 

HP  41  CVHe»  2  2 

B]ftes  Mem 

325  00 

250.00 

HP'ilCCjIculilar 

2S0-IXI 

ISS.DO 

CariliieailKForllCWi; 

215.00 

162.00 

Pmttlorimit 

31S.D0 

289,00 

OpIulWandFor  41  CVIC 

I2S0O 

97.00 

Quad  Ram  EquaK 

i  Mem.  Mulls 

95.00 

81.00 

Mimory  Modules  Foi  41C 

25,00 

HP  97  Progracnbte  Pfirler 

75000 

59500 

HP  67  Piofnmtiie 

CllculaUr 

37500 

295  00 

HP  3tC  ProsnraWe 

Scicnlilic 

150,00 

117.00 

HP  ]8C  ProgiimMi 

Bus  R>E 

151.00 

117  00 

HP  )2£  Adv.  ScienlilK: 

iS.OO 

4J.0O 

LHP-37E  Business  Mjml 

75.00 

57.M. 

OUR  PRICE  $2990.00  special  Of  The  Month 


TheHP12S. 
It  types  >t)ur  letters. 
And  docs  a  lot  mon;. 


Hill  lIuTk  |i)>l  lh>'  Iviinnifiy  I 
,in  .iWi  hi^|i  nilh,  tffunivl  i)in»i,«, 
■ii>lik>l<.i^ihL^k^.ir4la» 


Dual  Master 
Model  S2901M 

$1849.00 

MSL  1 1500.00    MSLSZSOO.OO 
SI  099.00  Soi^  401.00  Saot  651.00 


HP  DISC  DRIVE 
Single  Master 
Model  S2902M 

Our  Price 


! 


EJcammoidora 

1032  32K  80  Col  Cn 
403Z-32K  40  Col  CM 

4oie-]5K  40  Col  cn 

1050  Puil  Disk  9S0K 
(040  Dull  Disk  343r( 
C2N  Cissme  Dfive 
4022-80  Col  Pnnlti 
8024  Maonscnai  Talley 
2SCPS.Slin(ri!er 
CBM  IEEE  Midem 
Vfike  Srnthesr^er 
VIC  20 

PET  In  IEEE  Cable 
lIEEE  to  IEEE  fable 


Ust 

149500 

129500 

99500 

179500 

129S0O 

95  M 

79500 

159500 

189500 

27900 

395.00 

299  00 

39S5 

4995 


"Our  1 
Price 
1097.00 
589  00 
78J.M 
1344.00 
989  00 
77.00 
639,00 
1545,00 
139900 
225  00 
325-00 
255.00 
34.00 
39.00^ 


XEROX  iJii  OurPr"^ 

Xeroi  8201  51(4-  Disk  299500  2399.00 

Xeroi  820-2  8-  Disk  379500  2995.00 

CPIM  OpersHnf  System  20000  169.00 

^^       Word  Processini  Soltnare  500.00  42900 

71      LSuptr  Calc 295.00  24900, 


MX  M  FT 
MX  iO  IMPACT 
MX  70  IMPACT 
MX  100 

ANADEX  9501 
NEC 

5510 

5515 

3510 

3515 

OKIDATA 

MICROLINE80 

MICROLINE  82 

MlCnOLINE  83 

PAPER  TIGER 
t45G  mm  Ctaphics 
4eOG  >nN  Giapliics 
56K  Kern  lull  sue 

OlftBLO  (LETTER 

E3IlRI02llidiiec1iDiial 

Oaclors 
1E40K109  keyboard 

liaclorj 

530  no  Heteive  Only 
165M  miUfaMti 

liarlors 


S  745  00  S  54900 
64S.D0  450.00 
500.00  390.00 
995.00  765.00 
165000    1299,00 

3195.00  2445.00 

3295.00  2545.00 

249500  1795.00 

2545  00  1E49.D0 

545  00  395  OO 
64900  549.00 
1050  00      769.00 

795  00  595  00 

1.394  00  199  00 

169500  113900 
QUALITY) 

2,965  00  2.350.00 

tOOOOO  2.E99  00 
2  71000  2.250.00 

4.000  00  3.100,DO_, 


ATARI 

PERSONAL 

COMPUTERS 

400  IGU  Byte  ol  Ram 
too  16ft  Byte  of  Ram 
410  Proiram  Setordw 
810  PJ$k  Drive 
125  Pmler  (80  col 

Ceitroric  737) 
820  Printer  140  col 

impacU 

830  Acouilk  Modem 
850  Inlerlace  Module 
^bri  Visicalc 


A 

AMRI 


Llsl 

5»00 

108000 

9000 

60DOO 


(5O00 
20000 
22000 
20O00 


Our 
Price 
337.45 

739.00 
77.00 
457  OO 


353.00 
15500 
192,00 
164,00 


TEXAS  INSTRUMENTS 

II  9«f4A  Coesole  New  I  , 
Improved  \  ^  ' 

10'  Color  MonlMr  Hnll  ■\_ 
Resolulion 

32K  Memoij  Hoduie 

Speed]  Syrinesirer 

Disk  Memory  Drive 

RF  Modalalci 

Telephone  Coupler  lUodem) 

Punter  ISolirl  Sblel 


LtsI 

95000 

399.95 
39995 
14995 
459  95 
49.95 
22495 
39995 


Our^ 
Price 

385.95 

339.95 
312  95 
127  95 
390.95 
42.50 
185.95 
315.95 


BMC 

12-  Cm.  PnsKQllSHlt 

12-  Grn.  Phs  EO  |I8  H;i 

12-  Grn  Pfis  (20  H!l 

12-  Colour  Composrte  Hi  Res 

Cm  Phs  12- 

NEC  Oro  Phs  12- 

ZBitli  12- 

LE  MONITOR 

•  9-  B  4  W 

•  9-  Creen  Phs 

•  12-B4W 

•  1!'  Green  Phs. 
**  12'  Green  Phs. 

■    Anti  Reflective  Screen 
••  T.V.  Gride  Screen 
SANYO  MONITORS 

13'  Color  (neiil 

liitti  quality 
12'  Cietn  Phi 
12-B  i  W 
15-B4  W 

9' a  &  W  The  Best  Sederl 
^  9'  Green  Phs. 


Our 
Price 
165.00 
S249  00  185.00 
27900  20900 
43900  319  OC 
27500  1G5.D0 
225  00  17900 
IS9D0      11900 


179,00  159.00 

189.00  ie5.00 

209.00  las.oa 

229,00  199.00 

199,00  159.00 


1550  00  399  00 

360  00  259  07 

34000  739  01] 

370,00  25500 

235  00  159  00 

275  00  :j9  QOj 


XEROX  820 

WORD  PROCESSING  SYSTEM 
(INCLUDES  SOFTWARE) 


OIIR  PRICE    c^    .Oiicnn 
3495.00  ^""^"■"^      -. 


^                  Wk 

L>-J 

""1 

TERMINALS     B 

a 

"AVHfl 

^».-^^ 

TELEVIDED         •■™* 

*"^  ' 

_   Our 
Piite 

List 

9!0 

S  B99  00 

1593  0O 

9!2C 

950  00 

699.00 

920C 

99S00 

795.00 

^^iOC 

1.195.00 

949.00^ 

'DISKOTES  sold  in  boxes  of  io"1 

IMin.  Purctiase)  SlOO 

List 

Dur 

frice 

DYSAN          PtlCE  PER  DISIETTE 

104(1  5- SOFT  SECIOR 

6  00 

3.99 

I0471D  =-  DBL 

DEH  SOFT  SEC 

6.40 

4.60 

3740(1  1-  SOFT  SECTOR 

7.25 

4.75 

3740(10  8-  081 

DEN  SOFT  SECTOR 

10-75 

6.90 

MAXELL 

HD 1  S-  SOFT  SEC 

TORlOBI.  DEN 

5-00 

3.50 

HP  2   ■  SOFT 

SECT0R(DBL  SIDE  (DSL 

DEK 

7  00 

4,90 

FD18-  SOFT  SEC  (OBI 

DEN 

650 

4.51 

FDl  8*  SOFT  SECIOBL 

^JIDEIDBL,  DEN          /?\ 

850 

5.95j 

13RIVES   /;Vil=^ 

; 

Our 

CORVUS    K's-'/ 

Us< 

Price 

5  MB>TES          X:       / 

3  7500013.05000   | 

10  MB»TES              X/ 

535000 

4.449.00 

^JO  MBVTES 

645000 

5.32500^ 

EXPANSION  BOARD 

T 

OSTAR 

'fc; 

^1 

16K  RAM  BOARD 

m 

mi 

LIST          OUR  PRICE 

B 

H 

199.00           129.00 

■ 

^p 

- 

-^ 

'                           ^ 

T^^mt 

■  ^ 

SOFTWARE      m^ 

Si,T  "; 

i 

,<^^-i 

I 

FOR  APPLE  II  ^-..^ 

mi 

(Our 

* 

List 

Price 

language  System  wilh 

Apple  Pascal 

495.00 

399  00 

BPI  General  L«d|(r    System 

395  DO 

319  00 

Visidei 

200  OO 

15900 

VisitJk 

200  00 

159,00 

Desktop  Plan  II 

200.00 

159,00 

Microlab  Database  System 

15000 

11900 

Slcneware  DB  Master 

229  00 

185.00 

Muse  Suoerteit  II 

151,-^ 

115.00 

^Softape  Hajic  WitiilOK 

9900 

72.00, 

Qcommodore 

CD LDR  COMPUTER    l||C^2D 


VrcTVModual  519.00 

Vic  Cassette 169,00 

VrcOiskOnve SCali 

Vrc  6  Pack  program  J44.00 


MSL 
299.00 


OUR  PRICE 
S25S.00 


44.00 


SOFTWARE 


FOR  COMMODORE 
Oil;  The  iTttcumalior  Wizard 

inru  Into  Rrtmat  i  MtmL  Aid 
Oow  Jcnfls  Parffolio  Hjnjl 
Pascal  Devdopmeni  Piig 
Eti5R«:ej*a:>les.  invtn\ofy 
BpiCtncrat  Ledger 
WOffl  Pro  340  Column 
WerdPro4S(}Coii;nin 
^prd  Pro  i  Plus 


1^ 

4 


1  5 


List 

39500 
395.00 
495  00 
14900 
29500 
75000 
39500 
250  00 
375.00 
45000 


Oui 
Price 
1 289.00 
289.00 
389.00 
119-00 
219.00 
559.00 
319-00 
175.00 
259.00 
319.00 


NOVATION  1»T  MODEM 
NOVATION  DCAT 
NOVATION  APPLE  CAT 
HATES  MICROMODEM 
HAfFS  SMARTMODEU 


List 

189.95 
199.00 
38900 
379.00 
279.00 


Out 
Price 
140.00 
150.00 
329.00 
295,00 
239.00 


CALCULATORS|-I-| 

\^=^\  Our 

CASIO  ::;;;!  Ust  Price 

HR  10  Paper  feed       "Z'tz      4995  3900 

HR 12  Paper  Feed      i^'.V;      54  95  42.00 

FR  100  Paper  Feed     I;;;;      7995  59.00 

FR  1210Plperfecd  •■-■        12995  99,00 

P(J-20  2995  23-00 

LC785  1295  10.00 

LC3165  1295  10.00 

FX6!ScieiiM«  2995  23,00 

FX81Scie«Uc  19  95  17,00 

FX  3tOOP  Selenitic  39  95  29  95 

FX  602P  ■  Computer  Tali   88  Memories  Pro 
Eiammma  Upper  &  Lower  Case  Dot 

UalriiSI2Slep  12995  9900 

FX  T02P  Solies  Protiiems  with  Alpha- 
Numeric  Clarity,  uses  Basic 

^Lanjuaie  199)5  15900 


39995     213,00 


^  ^  f  f  ^  p  ^ 


<***-'*-<;■'*<.-'*-' 


"J^^flSSfii^SiSsf^i^ 


.1   '.'' ' 


INQUIRE 


A/Iir^DI— I  BUSINESS  WORLD 
'••"■^•^^J  WAflEHOUSE 

18720  Oxnard,  KIOS 
„    ,  Tai^ana.  CA  91356 

^  I    OUTSIDe  Zh  CALL  TOLL  FfiEt  i  iMft  a»sas6  \H  CA  |213I  096  3M3 

,^  I  Name  [Pteasa  pnnt) 

^  *  Adrtress 

V*  I  Cit, 


_StaIe  _ 


•ii 


Sty     MakB 


MoceJ 


PriCfr       Tola! 


AVINQS 
ERVICE 
ELECTION 
ATISF«CTION 


Talei:  182851 
Ariswar:MICKOTZNA 

^Cdulotnia  residents  add  &H  sales  tax 
'  "Ada  3%  Snipiung  &  H^nijiing  -  Add 
Vh  surcharge  for  credit  cares  Orders 
cannot  ue  snipped  unsess  accompanied 
oy  payment,  mciudmg  shipping,  (lanrtt- 
ing  and  lax  where  applicable 


lOtAl  ORDERS         

lAHIFAPPLICASLf  _ 
SHIIPPiNOSHANDKNO" 
TOTAL  ENCLOSED S 


Canllled  Cluck  or  M,0. 
I  I     :  Sank  WIra  Trinalar 

I       CPEDITCABD* 

I'    Eip  Dale 


Allow  2  wa«hs  et«iranee  lor 
persanal  check 


VISA  ffiB 


MAXEIL  «  DYSAN  «  EPSON  '  CCS  ■  SHABP  •  CASIO  •  HP  •  ViBSATlM  •  MEMOREX  •  SOROC  •  CORVUS  •  PERSONAL  SOFTWAOE  •  CCS 


198 


COMPUTfl 


febmarv.  1982.  Issue  21 


parallel  interface.  Serial  trans- 
mission rates  from  300  to  9,600 
baud  are  switch  selectable. 

For  more  information  on  the 
Prism  Printer  and  sample  output, 
contact  Integral  Data  Systems, 
Inc.,  Milford,  New  Hampshire 
03055.  (60H)  673-9100;  800-258- 
1386;  Telex:  953032. 

New  From 
Commodore 

Valley  Forge,  PA,  Nov.  12,  1981  - 
Commodore  Business  Machines 
has  introduced  its  newest  printer, 
the  low-cosi,  high-speed  (>BM 
8023P. 

Tliis  latest  addition  to  the 
growing  line  oi  CBM  peripherals 
is  a  bidirectional,  136-coltimn 
printer  with  both  tract{)r  and 
friction  iced.  The  8023 P  is  dot- 
matrix,  and  prints  150  cliaracters- 
per-second  (CFS).  It  is  available 
through  C.ommodore  dealers 
throiighoiil  the  nation  for 
$995.00. 

The  new  CBM  printer  is 
designed  to  operate  through 
software  control,  prints  upper 
and  lower  case  alphabetic  char- 
acters, all  graphic  characters 
available  with  a  Commodore 
computer,  as  well  as  user-defined 
characters. 

The  8023 P  conforms  to 
IEEE  interface  requirements  and 
connects  directly  to  a  Commo- 
dore computer.  It  is  designed  to 
be  used  with  the  CBM  floppy 
disk  drives,  and  may  be  daisy- 
chained  with  other  IEEE-488 
devices. 

Because  the  printer  is  an 
"intelligent"  peripheral,  it  uses 
none  of  the  computer's  memory. 
In  addition,  the  8023P  contains 
Random  .'\ccess  memory  (RAM), 
\vhich  permits  storage  of  for- 
matting data. 

;;:   :!;   ^    :):   *   *   * 

A  programmable  character 
set  and  gamegraphics  editor  on 
cassette  has  been  introduced  by 
Commodore  Business  Machines, 


Inc.,  for  users  of  its  VIC  20"* 
personal  computer. 

Now  available  at  authorized 
Commodore  dealers  throughout 
the  nation  for  $14.95,  the  charac- 
ter set  editor  comes  with  a  16- 
page  instruction  manual  and 
allows  VIC  users  to  create  groups 
of  64,  128,  or  192  programmable 
characters  at  a  time  and  use  them 
in  BASIC  programs.  Each  group 
of  characters  takes  only  one-half 
kilobyte  (0.5K)  of  program  space. 

With  the  new  character 
editor.  Commodore  VK]  20 
users  can  create  their  own  char- 
acter set  and  easilv  modify  letters, 
numbers,  and  graphics  to  include 
foreign  language  letters,  mathe- 
nialic  and  scientific  symbols,  or 
special  "arcade"  game  graphics. 

Commodore's  new  character 
set  editor  also  allows  VIC  20 
users  to  save  their  newly-created 
character  set  on  tape  or  disk  for 
future  use,  and  then  easily  insert 
the  set  in  a  BASIC  program. 

Along  with  the  character  set 
editor,  also  new  from  Commo- 
dore is  the  recently-introduced 
VIC  1515  low-cost  dot-matrix 
printer.  Available  for  $395,  the 
VIC  1515  has  a  printing  speed  of 
30  CPS,  and  prints  any  of  the 
alphalx-lic,  numeric,  and  graphic 
symbols  common  to  the  VIC. 

From  Krell 
Software  Corp. 

WAR  OF  THE  SAMURAI  is  a 
game  of  combat  and  intrigue. 
Two  to  foiu-  players  may  compete 
in  this  original  game  that  com- 
bines the  strategic  complexity  of 
Go  with  the  subtle  dynamics  of 
Chess.  Detailed  graphics. 

Machines:  Apple,  PET, 
TRS-80,  16K,  available  on  disk 
or  cassette.  $39.95 

ALEXANDER  THE  GREAT 
is  a  vocabulary  building  game  in 
a  fantasy  game  context.  Based  on 
the  Sword  of  Zedek,  their  best 
.selling  fantasy  game.  Alexander 
the  Great  introduces  Aristotle  as 


a  mentor  to  the  player.  When 
called  on,  ,A.ristotle  poses  vocabu- 
lary questions,  and  depending  on 
the  speed  and  accuracy  of  the 
player  response,  confers  secret 
information.  W'ith  Aristotle  as  an 
ally,  the  quest  to  overthrow  Ra, 
The  Master  of  Evil,  assumes  a 
new  dimension  of  complexity. 
Players  may  select  the  level  of 
vocabularv  difficulty. 

Machines:  Apple,  TRS-80, 
PET,  48K,  available  in  two  ver- 
sions (K-8)  8c  (9-Collegc).  $39.95. 

ISAAC  NEWTON  challenges 
the  players  to  assemble  evidence 
and  discern  the  underlying  "Laws 
of  Nature"  that  have  produced 
this  evidence.  ISAAC  NEWTON 
is  an  indtictive  game  that  allows 
players  to  intervene  actively  by 
proposing  experiments  to  deter- 
mine if  new  data  conform  to  the 
"Laws  of  Nature"  in  question. 
Players  may  set  the  level  of  diffi- 
culty from  simple  to  fiendishly 
complex. 

In  a  classroom  setting  the 
instructor  may  elect  to  choose 
"Laws  of  Nature"  in  accordance 
with  the  complete  instruction 
manual  provided. 

Machines:  Apple,  PET, 
TRS-80,  Atari,  16K,  available  on 
disk  or  cassette.  $24.95 

FIG  NEWTON  -  full  graphics 
Newton.  This  version  of  Isaac 
Newton  presents  all  data  in 
graphic  form.  Because  tlata  is 
graphic  rather  than  symbolic, 
this  game  is  suitable  for  very 
young  children.  Players  may, 
however,  select  difficulty  levels 
challenging  to  the  most  skilled 
adults. 

Machines;  Apple,  PET, 
TRS-80,  Atari,  16K,  available  on 
disk  or  cassette.  $24.95 

ODYSSEY  IN  TIME  adven- 
ture game  adds  a  new  dimension 
of  excitement  and  complexitv  to 
TIME  TRAVELER.  Players  must 
now  compete  with  llie  powerful 
and  treacherous  adversary  in 
their  exacting  quest  for  victory. 

To  succeed  they  must  van- 
quish this  adversary  in  combat 


/ 


commodore 

spectacular 


8002-32K80COLCRT 


REG. £1495 


PhilodelphiQ 
Computer  Discount 

155E.  LANCASTER,  PA  19087  MAILORDER 

800-045-1289 

IN  PA  CALL  (21 5)  687-6540 


PREPAID  ORDERS  SHIPPED  FREE 
VISA  b  AAASTERCARD  ADD  3% 

•    COD -UPS 
•   PA  RESIDENTS  ADD  6  %  PA  TAX 


200 


COMPUTEI 


February  1982,  Issua  21 


that  rages  across  24  time  periods. 

ODYSSEY  IN  TIME  in- 
cludes all  the  challenges  of  TIME 
TRAVELER  plus  10  additional 
eras,  including  those  of  Alexander 
the  Great,  Emperor  Asoka  ot 
India,  Attila  the  Hun,  Genghis 
Khaii.  Each  game  is  unique  and 
may  he  interrupted  and  saved  at 
any  point  for  later  play. 

Machines:  Apple,  PET, 
TRS-80,  Atari,  32K,  available  on 
disk  or  cassette.  $39.95 

Krell  Software  Gorp. 

21  Millbrook  Drive 

Stony  Brook,  NY  11790 

From  Strategic 
Simulations 

Napoleon's  Campaigns  is  a  corps- 
level  game  simulating  the  last 
campaigns  of  Napoleon:  Leipzig 
and  Waterloo.  It  is  an  advanced- 
level,  board-assisted  computer 
game. 

Each  campaign  is  displayed 
on  a  colorful  18x2  1  hex  grid  map 
in  Hi-Res  (Graphics.  The  game 
employs  a  unique  system  re- 
quiring orders  to  be  sent  and 
received  through  dispatches. 
The  reports  received  vary  in 
degree  of  accuracy  based  on  a 
variety  of  historical  factors.  The 
computer  acts  as  corps  com- 
mander for  each  corps,  inter- 
preting the  orders  the  corps 
receives  and  often  acting  on  its 
own  initiative.  These  features 
simulate  the  frustration  expe- 
rienced by  commanders  of  the 
Napoleonic  Era. 

l"he  game  includes  one 
diskette,  rule  book,  player  aid 
card,  2  two-sided  map  boards 
and  100  counters  for  $59.93. 

Southern  Command  is  a 
battalion-level  simulation  for  the 
Israeli  counterattack  to  cross  the 
Suez  Clanal  during  the  October 
War  of  1973  against  Egypt. 

The  Sinai  battleground  is 
displayed  in  Hi-Res  Graphics  on 
a  28x39  hex  grid  map  which  can 
be  viewed  on  one  screen  or  on 


twelve  screens,  using  scrolling. 
More  than  ten  unit  tvpes  in- 
cluding tanks,  halftracks,  BDM's, 
infantry  and  Egyptian  SAM  sites 
(to  combat  Israeli  airstrikes)  are 
used  in  the  two  player  and  each 
of  the  four  computer-as-opponent 
.scenarios. 

Modern  warfare  is  accurately 
leflected  in  the  ability  of  units  to 
reorganize  after  they  have  been 
attacked  and  in  the  "Delayed 
Move"  feature,  allowing  iniits  to 
amliusb  moving  enemy  units. 
Each  side  also  has  the  ability  to 
sight  hidden  enemy  units. 

Southern  Command  iS  avail- 
able with  cliskette,  rule  book, 
map  and  player  aid  card  ior 
$39.95. 

Botli  games  require  a  48K 
Apple  II  with  Applesoft  in  ROM 
and  one  disk  drive. 

From  Strategic  Simulations, 
465  Fairchild  Dr.,  Suite  108, 
Mountain  View,  CA  94043. 

From  Automated 
Simulations 


.Automated  Simulations.  Inc.  has 
relea.sed  a  new  MIND  lOW 
Ricochet,  an  original  abstract 
strategy  game  designed  exclu- 
sively for  the  home  computer. 

Ricochet  is  a  game  of  subtle 
strategy  combined  widi  fast  action 
and  arcade-style  giajjliics.  The 
game  can  be  played  against  any 
of  four  different  computer  oppo- 
nents, or  against  anotlier  human. 

The  piaver  maneuvers  blocks 
to  set  up  a  shot  at  his  o|)poneni's 
goal  and  to  protect  his  goal  from 
attack.  Each  player  has  two 
launchers  he  can  fire.  His  shots 
ricochet  off  the  blocks,  earning 
him  points  each  time  a  block  is 
hit,  phis  he  gels  bonus  ]joints  for 
hitting  hi.s  opponent's  goal. 

Before  he  can  claim  victory, 
ihe  plavei-  nnist  win  two  out  of 
three  (or  thiee  out  of  five)  games. 
A  match  victory  also  boosts  his 
personal  Ricochet  Player  Rating, 
which  measures  his  mastery  of 


the  game  against  other  players. 

Ricochet  is  available  on 
ca.s.setle  for  (he  Alaii  400/800 
( IfiK  widi  BASIC  ROM  cartridge) 
and  rRS-80(l(iK,  Level  II).  or 
on  disk  for  Ihe  Atari  400/800 
(32K),  TRS-80  (TRSDOS  32K) 
and  APPLE  (  I8K  with  Applesoft 
in  ROM).  ,11;  19.95 

From  Automated  Simula- 
lions,  P.O.  Box  4247,  Mountain 
View,  CA  94040. 

From  Synergistic 
Software 

Odyssey:  1  lie  (iompleai  .Adven- 
ture, is  now  available  for  the 
Apple  II  computer  in  the  .\pple- 
.soft  bask:  language.  This  ad- 
venture game  is  expanded  into 
three  separate  biu  interlocking 
programs.  4'he  [programs  have 
colorful  high  resolution  anima- 
tion as  well  as  sound  effects. 
Many  different  paths  to  (he  goal 
exist  that  will  not  trap  the  player 
or  force  repetition.  Being  a  role 
playing  game,  player  action 
determines  alignment,  charisma, 
wisdom,  experience,  etc.  Lhese 
features  aiTec(  the  outcome  of 
friendship  and  battle  encounterd 
during  play. 

The  object  of  this  game  is  to 
save  a  realm  from  an  evil  ruler. 
Starting  alone  on  a  large  island 
von  seek  out  gold,  soldiers  lo  join 
you,  and  useful  tools  while 
gaining  experience.  If  you  are 
successful  and  clever  you  can  not 
only  walk  but  also  ride,  fly,  and 
sail. 

With  dozens  of  high  resolu- 
ti(m  pictures  and  animation 
effects  different  each  time  you 
play,  each  game  is  u rut] tie.  C^are- 
ful  planning  and  strategy  are 
necessary  to  successfully  complete 
this  adventure.  Requires  48K 
Apple  11  or  Apple  11  Plus.  Avail- 
able in  Integer  or  Ap]>lesoli  for 
.■fSO.OO  from  Synergistic  Software, 
5221  I2(hh  Avenue  SE.  liellevue, 
WA  98006.  (206)226-3216 


^'t^Tf}^^ 



and  mae  *  i 

. 

vC^s^J^ 

-^         ^ 

ATARI 

400W/16K  

..*  339°° 

800W/16K  

. . '  739°° 

810  Disk  Drive  ... 

. . '  449°° 

830  Modem    

s  15900 

850  Interface  

,.'  159°° 

16K  module  

I     gsDii 

EPSON 

MX-70  

..    CALL 

MX-80 

..    CALL 

MX-80F/T  

..    CALL 

MX-100  

..    CALL 

Graphics  kit .. 

..»    85°" 

Interfacecardsandcabl 

es  available 

tor  your  machine! 

Welt  meet  or  beat 
any  advertised  price. 


ul'cM  pack  And 

HP-85AW/16K '2595°° 

HP-125   «2995°° 

TELEVIOEO 

920C   »  729°° 

950   »  939°° 

ZENITH 

Z-19 '  725°° 

Z-89 '2150°° 

Call  tor  more  grea!  prices  on  NEC. 
BMC.  Northstar.  Altos,  Soroc.  Am- 
dek  ,  .  and  others. 

LO-BALL  COMPUTERS 

P.O.  Box  1818 
Beaverton,  OR  97075 
APO/FPO  welcomed 

CALL  (503)  641-0211 

Ordering  Informallon:  For  fastest  ser- 
vice, send  money  order,  cashier's 
check  or  bank  wire.  Visa  and  MC 
orders,  add  3%,  Personal  checks 
accepted  lallow  minimum  10  days  to 
clear).  Hours  9-5.  M-F. 

Call  For  Our  Free  Price  List 


NEC 

Microcomputer 


CALL  FOR 
BEST  PRICE 


Asppta  computer 

CALL  FOR 
BEST  PRICE 

DISK  DRIVES 
AVAILABLE 


CALL  FOR  PRICES 


tP^ 


f^^^lfi 


Ha)M  UlcretrDdKn  11 
■nwnd^'ctot*  Will,  ei4cMci*i«n<l(i 


MORE  DISCOUHT  PRICES 

M*  WuileS|i1m[llrDhcn|  4r9  Wi^dSlir  [HmtaH  tOI 

»9  Cl^SUdMHIwKl^Eird  IH  Dvx  Jwnn  Panlolo  Ei 

U9  SuEtn-TRniiiulKleal»nnfH««:inUIflI31  A«iplvWiHiT 

30  w*  cirri  AO  CariTHitia  CAft^ulw 

1l»    )ritnr*iitfVI»i'l0l 


CALL  »tKH*fbx 

1M  TatPnWfr 

211  Pi|f>on(IF1ltr4Erll4rf<[1>lFt 

TU  SYi^amimuLjleEl'ngSaMwKi 


printehs 


*jl»Mn*WWl3lCBuH" 

13M 

C.  Iloh  Sl*nnil«  2i  CPS 

M-(9 

C-  HpA  Slinnftpr  I&  CP& 

illatirwh*** 

iMa 

Epwiuxn 

CALL 

EpwiHXWtHXWF/T 

CALL 

Ep*iwfcWiM 

CALL 

NEC  M23  tm  13*^1  DM  Uilr 

.     695 

NEC  Splfiiiinian  aai*ii  r 

Kfvll^ 

■  CALL 

P*pt>TiflwlDS^5a«'iii 

phLca 

flqa 

Pupa*  Tign  IDS-tEOCi  wft<tpnie» 

949 

p«(Mi  Tiaw  ros-siOG  wi^ 

phkci 

S:il«ntn>i  I^TliR  la'ApoMi 

nlwfaCa 

U9 

Oum*   S^nl    DiitjvTM*! 

n.n*tt 

niwMt) 

CALL 

G4«Wa  no  D«l«yi*«lMi|  *  P^ 

179S 

ORDER 
TOLL-FREE 

800 
854-6654 

In  California  and 
outside  U.S. 

(714)  698-8088 


Qcammodore 

^   CBM 

0^    Business  computer 

CALL  FOR 
BEST  PRICE 


MOHITORS 


irMw  iSS 

knanr^mOtt  Vhuo  lOOG  it" 

Grran  PlnaphaT  iJS 
Arntf^h  iHilKflO  '»■  COIOT 
w(iii4«  sutpul  1  79 
MCC  T?^  a<a«fi  PruBiphar  Dtipli 
JBIJOIM                                     CALL 
"EC  IJ-  Lo-An  CiMm  IMipIti 
CALL 

NEC  1Z-  HI  Ra*  RdH  CdIot  CiKplKy 

CALL 

SanyoS-QtWO^l^ri,  1^5 

S4rn,D  «'  Giaan  Ph<vaph«rr  DJ#»lar 

CALL 

Stryali'DiwDl^fkltT 

zas 

StnraU'CDiiN'Qiipla)  U? 

JVillM  1^" 

CALL  FOR 
BEST  PRICE 


Qcommodore 

PET 

Personal  computer 

CALL  FOR 
BEST  PRICE 


PERSONAL 
COMPUTER 


DISK  DRIVES 
AVAILABLE  SOON! 


VIO20 

$259 

•  color  •  sound 
•  graphics 


WE  STOCK  1000S  OF  HARDWARE  AND  SOFTWARE  ITEMS, 
PLEASE  WRITE  OR  CALL  FOR  LIST 


(3®[jQg[iaDua©ff 


Mail  Order 

8314  PARKWAY  DR. 
LA  MESA,  CA  92041 


O*0eriing  ntoiTTKatlaii:  ^hons  oidora  usina  VISA,  UASTEnCARD,  AUEI^iCAN  EXPflESS  DINEH  S  CLUB  CART£ 
BLANCHE,  baiH  wlro  triniler.  caaM'er's  or  cerli(ief)  cftock.  snomy  o'HCf  5'  peiSooar  thcsK  liiliow  ten  daya  to 
I  dcafj  UfiiifiSS  prepaid  with  cash,  ploisn  add  5%  larshipplnQi  fiar^diJng  ana  Insutanc?.  Imijumum  5DC1  CalilDfjiJa 
to^ldet^ij  ado  6%  aalBS  EaM  Inalitutliifis  antJ  corporations  plaajp  B*nd  fo'  a  mriitan  quolallon.  All  equipment  IE 
SuEjffci  10  P'iCe  CPiarioo  and  availability  wllhoul  rolice  All  iitju'lcmciit  l5  ne*  and  cDrnclBli!  wlh  Tnanulaclurer's 
roniy  HysuflHy  90  daySj  Snawroom  prices  may  diltci  tiom  rraii  qi-fler  prices 


SPECIALS  on  INTEGRATED  CtRCUITS 


6502 

7.45 

1 0/6.95 

50/6.55 

100/6.15 

6502A/6512A 

8.40 

10/7.95 

50/7.35 

100/6.90 

6520  PIA 

5.15 

10/4.90 

50/4.45 

100/4.15 

6522  VIA 

6.45 

10/6.10 

50/5.75 

100/5.45 

6532 

7.90 

10/7.40 

50/7.00 

100/6.60 

2114-L200 

3.75 

25/3.50 

100/355 

211't-L300 

3.15 

25/2.90 

100/2.65 

2716  EPROM 

7.00 

5/6.45 

10/5.90 

2532  EPROM 

14.50 

51l6ltltaetl2K 

It  CMOS  MM 

14.50 

411E 

tftrlT 

ZefO  Insertion  Force  24  pin 

Socket 

2.00 

6550  RAM  (PET  8K) 

12.70 

S-100  Wife  Wrap  Socket 

240 

A  P  Products    15%  OFF 
APHobby-Blox    15%  OFF 


THE  STAR  MODEM 

Ftm  hutki/UHnMn  Dati  tftltm 
RSZ3Z  MODEM 
IEEE  488  MODEM 

RSZ32  ccin 

IEEE  488  CCin 


SALE    $128 

SALE    $199 

$170 

$270 


We  carry  Apple  11+  from 
Bell  &  Howell 


lillFOItTH+  lir  kffk  II  t7S 

A  full-featured  FORTH  with  entiancements.  Cortomis  to 
FORTH  Interest  Group  standardi 


VIC  3K  RAM  (with  2  ROM  Sockets) 
Write  for  VIC  Software  List 


65 


REVERSAL  (Spracklen)   32  K  Apple 
Data  Manager  (Lytus)  24  K  Apple 
Energy  Miser  -  PET  Apple,  Zenith 
Histo-Grapti  (Boydl  48  K  Apple 
Data-Graph  (Boyd)  48K  Apple 
Apple  !l  User's  Guide  (Ostxxne) 
Introduction  to  Pascal  (Sytwx) 
Pascal  Handtxjok  (Syt)ex| 
Musical  Applications  ol  Micros  (Chamtjerlin) 
Basic  FORTRAN  (Coan) 


28.00 
40.00 
24.50 
24.50 
40.00 
12.00 
10.30 
12.00 
20.00 
7.25 


CP/M  Handtxwk  (with  MP/M)  Zaks  11.85 

Programming  the  6502  -  Zaks  10.00 

Mcroprocessof  inteffacing  Techniques  13.00 

PET/CBM  Personal  Computer  Gukle  (Ostxme)  1 2.00 

PET  and  the  I EEE^  88  Bus  (GPI  B|  1 2.25 

6502  Assembly  Language  Prog.  -  Levanthal  13.50 

Z-80  Assembly  Language  Prog.  -  Levanthal  12.75 
8080A/e085  Assembly  Language  Programming       1 2.75 

ZeODO  Assembly  Unguage  Programming  16.00 

6809  Assemt)ly  Language  Programming  13.50 

6800  Assembly  Language  Programming  12.75 

The  58000  Miaoprocessor  Handbook  5.75 

BASIC  and  the  Personal  Computer  (Dwyer)  1 1.00 


252  Bethlehem  Pike 


Qcommodore 


CBM-PET  SPECIALS  „^ 

8023Pnntef-136col,150cpsbi-directk)nal  (995)    775 
8300  (Diabk)  630)  Daisy  Wheel  -  40  cps 

b<-directbnal  (2250)  1725 

8032  80  x  25  CRT,  business  keyboard  (1495)  1100 

Super  Pel  (1995)  1600 

6096  Board  (extra  64K  RAM  lor  8032)  (500)    400 

8050  Dual  Disk  Drive  -  1  megabyte  (1795)  1345 

8250  Dual  Disk  Drive  -  2  megabyte  (2195)  1760 

CBM  IEEE  Modem  (395)     199 

4016  full  size  graphics  keyboard  (995)    795 

4032  y I  size  graphics  keyboard  (1295)    999 

404O  Dual  Disk  Dri^e  •  330,000  bytes  (1295)    999 

2031  Sinfile  Disk  Drive  -  165,000  bytes  (695)    560 

4022  Tractor  Feed  Printer  (795)    630 

C2N  External  Cassette  Deck  (75)      65 

VIC  20  CokX  Computer  (299)     259 

VIC  1515  Graphic  Printer  (395)     325 

Used  CBM/PET  Computers  CALL 

8024-7  High  Speed  Printer  (1995)1345 

WE  WILi  MATCH  ANY  ADVEItTISED  PRICE 
***  EDUCATIOMALilSCOiTNty***" 

Bit  Z  PET/CBM  CMprtin,  nctin  )  FREE 


WordPro  3  Plus  -  32K  CBM,  disK  printer  200 

WordPro  4  Plus  -  8032,  disk,  printer  325 

OZZ  Data  Base  System  for  CBM  8032  335 

VIS  10 ALC  for  PET,  ATAfi  I,  or  APPLE  1 55 

SM-KIT  ■  ItHr  PET  DOM  UtWlti  40 

Programmers  Toolkit  -  PET  ROM  Utilities  35 

PET  Spacemaker  II  fiOM  Switch  36 

2  Meter  PET  to  IEEE  or  IEEE  to  IEEE  Cable  40 

Dust  Cover  for  PET  7 

IE  E  E-Parallel  Printer  Interlace  tor  PET  110 

IEEE-RS232  Printer  Interface  for  PET  120 

THe  PET  Revealed  17 

Library  of  PET  Subroutines  17 


4  PART  HARMONY  MUSIC  SYSTEM  fir  PET 

Ttie  Visibie  Music  Monitor,  by  Frank  Levinsoa  alkiws  you  to 
easily  enter,  display,  ediL  anO  play  4  part  harmony  music 
Includes  whole  notes  thru  64lhs  (with  dotted  and  triplets), 
tempo  change,  key  signature,  transpose,  etc.  The  KL-4M 
unit  includes  D  10  A  Converter  and  amplifier  ready  to  hook  to 
your  speaker. 
KL-4M  Mitk  tmii  ittt  tMH  Tntnm  tBO 


Watanabe 

Intelligent 

Plotter 


ITATtNAlE  WX4e71  PMtir 
WATANtlE  W)I467S    H-  n<1l>r 


DISK 
SPECIALS 


SCOTCH  (3M)  5" 
SCOTCH  (3M)  8" 
Vertialim  8"  Double  Dens. 
Vertiatim  5"  DataJite 
(addl.ODIor  VeftMtim5" 
BASF  5"  soft 
Wabash  5"  in  Plastic  Box 
Waliash  8"  in  Plastic  Box 


10/2.75  50/2,65 

10/?.80  50/2,70 

10/3-45  50/3-35 

10/2  45  50/2-40 
plastic  storage  box) 

10/2.40  20/2.35 

10/2.70  50/2.60 

10/2.75  50/2.65 


100/2.60 
100/265 
100/3-20 
100/235 

100/2.30 
100/250 
100/255 


WE  STOCK  MAXELL  DISKS 


Diskette  Storage  Pages 
Disk  Library  Cases 
Disk  Hub  Rings  8" 


8" 
50  @  7,50 


10  for  3.95 

2.85      5"  -  2.15 

5"  ■  50  @  6.00 


CASSEnES-AGFAPE-611  PREMIUM 

High  output,  \cm  noise,  5  screw  housings. 
C-10  10/.56    50/50     100/.48 

C-30  10/.73    50/68     100/66 

All  other  lengths  available.  Write  for  price  list 


SPECIALS 


EPSON  MX-SQ  Prlilir 

EPSON  MI-BO  F/T  Pilittr 

EPSON  MX-70  Pdllr 

EPSON  HX-lOO  PiMtr 

Centronics  739  Printer  with  dot  graphics 

tTAnrilTEII  OiliT  Whid  Priittr 

Zenith  ZVM-121  Green  Phosphor  Monitor 

Amdek  Color  Monitor 


675 
U4S 

115 
355 


ALL  BOOK  iW  SOFPNABE  PRICES  DISCOUNTED 

OSBORNE/McGraw-Kill,  HAYDEN.  SYBEXetc. 


Synertek  Systems 


SYM-I  Mlcn>coi)i|i(iter                   SALE  199 

SYM  BAS-1  BASIC  or  RAE  1/2  AssemWer  85 

KTM-2/80  Synertek  Vkleo  and  Keyboard  349 

KTM-3/80  Synertek  Tubeless  Temiinal  385 


jjeniTis 


data 
systems 


Z90-80  64  K 

Z90-82  64  K.  1  double  dens,  drive 

Z89-0  48  K 

Z89-1  48K,  t  drive 

Z67  1 0  Megabyte  -1-  Fkippy  Drive 

Z37  1,3  Megabyte  Dual  Ftoppy 

Z25  High  Speed  Printer 

Z19  Video  Terminal  (Vr-52  compatible) 

HVM-121  Green  Phosphor  Monitor 

All  Zenith  Software  discounted 


2170 

2395 

1950 
2150 
4495 
1495 
1195 
670 
119 


ATARf 

SPECIALS 


800  Cmrputer 
400-  16K 
810  Disk  Drive 
825  Printer 
850  Interface 
822  Priiiter 
Paddle  Pair 
Joystick  Pair 
16KRAM 
Assembler/Editor 
TeleLmk 

Wnte  for 


779 

339 

449 

629 

175 

359 

17 

17 

85 

46 

20 


410  Recorder  59 

Pitot  68 

Microsofi  BASIC  68 

Educ  Series  20%  off 
MISSlLi  COMMAND  31 
ASTEHOIDS 

stah  iaioeis 

Space  Invaders 
Music  Composer 
Chess 
Super  Breakout 


prices  on  other  Alan  items 


WRITE  FOR  CATALOG 

Add  $1 .25  per  order  for  shipping.  We  pay  balance  of  UPS  surface 

;s  on  all  prepaid  orders.  Prfces  listed  are  on  c; 
basis  Regular  prices  slightly  higher  Prices  subject  to  change. 


$85 


KMMM  Pascal  for  PET/CBM 

A  subset  of  standard  Pascal  with  extensions. 

-  Macfilne  language  Pascal  Source  Editor  with  cursor 
oriented  window  mode 

-  Mactiine  Language  P-Code  Compiler 

-  P-Code  to  macNne  language  translator  for  optimized 
object  code 

-  Run-time  package 

-  Floating  point  capat)ility 

•  tJsef  manual  and  sample  programs 

Requires  32K  Please  specify  configuratiod 


EARL  for  PET  (disk  tils  based)        $65 

Edibr.  Autfflhtar.  RilKittr,  Uilnr 

Generates  relocatable  object  code  using  MOS  Tecfinology 
mnemonics.  Disk  file  input  (can  edit  (iles  larger  ttian 
memofy)-  Links  .multiple  object  programs  as  one  rnemory 
kiad  Listirig  output  to  screen  or  printer.  Entianced  editor 
operates  in  botti  command  mode  and  cursor  oriented 
"window"  moda 


RAM/ROM 
for  PET/CBM 

4K  or  8K  bytes  of  soft  ROM  with  optional 
battery  tiackup. 

RAM/ROM  is  compatible  with  any  large  keyboard  niacliine. 
Plugs  into  one  of  ttte  ROM  sockets  above  screen  memory  to 
give  you  switcfi  selected  write  protectable  RAM. 
Use  RAM/ROM  as  a  software  devek)pment  tool  to  store  data 
Of  mactiine  code  beyond  Ifie  normal  BASIC  range.  Use 
RAM/ROM  TO  LOAD  A  ROM  image  wtiere  you  fiave  possibte 
conflicts  with  more  than  one  ROM  requiring  ifie  same  socket. 
Possible  applications  include  mactiine  language  sort  (sucti  as 
SUPERSORT),  universal  wedge,  Extramon,  etc. 
RAM/ROM  -  -  4K  $85 

RAf^/R0M--8K  120 

Battery  Backup  Option  30 


SUPEflSORTby  James  Strasma  $  3  5 

Supersort  is  an  excellent  general  purpose  machine 
language  sort  routine  for  PETyCBM  computers.  Sorts  both 
one  and  two  dimenskxiefl  anays  at  ligfitning  speed  in  either 
ascending  or  descending  order.  Other  fields  can  be  subsorted 
when  a  match  is  found,  and  ftelfls  need  not  be  in  any  special 
order.  Sort  an-ays  may  be  specified  by  name,  and  fiekjs  are 
random  length.  Allows  sorting  by  bit  to  provide  B  categories 
per  byte.  Ttie  routine  works  with  all  PET  BASICs.  adjusts  to 
any  memory  size,  and  can  co-exist  wilh  other  programs  in 
high  memo(y. 


SuperGraphics 

by  John  Fluharty  $oO 

SuperGraphics  provides  machine  language  extensions  to 
Commodore  BASIC  to  allow  last  and  easy  plotting  and 
manipulation  of  graphics  on  the  PET/CBM  video  display,  as 
well  as  SOUND  commands. 

Animations  that  previously  were  too  slow  or  impossible 
without  machine  language  subroutines  now  can  be  pro- 
grammed directly  in  BASIC,  Move  blocks  (or  rocketships,etc,), 
or  entire  areas  of  the  screen  with  a  single,  easy  to  use  BASI C 
command.  Scroll  any  portion  o(  the  screen  up,  down,  left,  or 
right.  Turn  on  or  oft  any  of  the  4000  (8000  on  8032)  screen 
pixels  with  a  single  BASIC  command,  I  n  high  resoluhon  mode, 
draw  vertical,  horizontal,  and  diagonal  lines.  Draw  a  box.  fill  a 
box.  and  move  it  around  on  the  screen  with  easy  to  use  BASIC 
commands 

Hie  SO  UN  D  commands  allow  you  to  initiate  a  noteor  series 
of  notes  (or  even  sevaat  songs)  from  BASIC,  and  then  play 
them  in  the  background  mode  without  intertenng  with  your 
BASIC  program,  Tfiis  allows  your  program  to  run  at  full  speed 
with  simultaneous  graptiics  and  music. 

SuperGraphics  commands  include  GRAPHIC,  TEXT,  RVS, 
SET.  DRAW,  FILL  PLOT,  MOVE.  PRINT,  CSET,  CMOVE, 
DISPWY,  PUT,  SWAP,  PAUSE,  and  SOUND, 

Please  specify  machine  type  and  ROM  version.disk  or  tape. 


fir  PET/CBM  Ciapitin 


Self  Calculatitig 

DATA  BASE 

REPORT  WRITER 
MAILINC  LIST 


FLEX-FILE  is  a  set  of  flexible,  friendly  programs  to  altow 
you  to  set  up  and  maintain  a  data  base.  Print  files  with  a 
versatile  Report  Writer  or  a  Mai!  Label  routine.  Pro- 
grammers will  find  it  easy  to  add  subroutines  to  Iheir  own 
programs  to  make  use  of  Data  Base  files, 
RAHDOM  ACCESS  DATA  BASE 
Record  size  limit  is  250  characters  Tlie  number  of  records 
per  disk  is  limited  only  by  the  size  of  each  record  and  the 
number  of  records  per  disk  is  limited  only  by  ttte  size  of  each 
record  and  the  amount  of  free  space  on  the  disk.  File 
maintenance  lets  you  step  forward  or  backward  through  a 
file,  add,  delete,  or  change  a  record,  go  to  a  numbered 
record,  or  find  a  record  by  specified  field.  The  Find  command 
Ixates  any  record  when  you  enter  all  (or  a  portion  of|  the 
desired  key.  Field  lengths  may  vary  Irom  record  to  record  to 
allow  maximum  packing  ol  information  Files  may  be  sorted 
by  any  field,  and  any  field  may  be  specified  as  a  key. 
Sequential  files  from  other  programs  may  be  converted  to 
Flex-Fite  format  and  Flex-File  records  may  be  converted  to 
sequential  (WordPro  PaperMate,  other  word  processors 
may  also  use  Flex-File  data).  Maximum  record  size,  fields 
per  record  and  order  of  fields  may  be  changed  at  any  time. 
MAILING  LABELS 

With  typical  record  size  of  1 27  characters,  each  disk  can 
handle  over  1000  records  (about  2800  with  8050  drive). 
Labels  may  be  printed  any  number  wkle,  and  may  begin  in 
any  column  position.  Tfiere  is  no  limit  on  the  number  or  order 
of  fiekJs  on  a  labeL  and  two  or  three  fields  may  be  joined 
together  on  one  line  (like  first  name,  last  name  and  title).  A 
"type  of  customer"  field  alkiws  selective  printing 
REPORT  WHITER 

Prim  any  field  in  any  column  For  numeric  fields,  use 
decimal  point  justification  {and  round  to  any  accuracy). 
Define  any  column  as  a  series  of  mathematical  functions 
pertormed  on  other  columns.  These  functions  include 
arithmetic  operations  and  various  log  and  trig  functions. 
Pass  results  ol  operations  such  as  njnning  total  from  row  to 
row.  At  the  end  of  the  report,  print  total  and/or  average  for 
arry  column  Complete  record  selection,  including  field 
within  range,  pattern  match,  and  logical  functions  can  be 
specified  individually  or  in  combination  with  other 
parameters 

FLEX-FILE   by  MIcliiil  Hiliy  160 

Please  specify  eouioment  configuration  when  ordering. 


Low  Cost  Disk  Drive  for  PET/CBM 

PEDISK  II  from  cgrs  Microtech  is  a  new  disk  system  ready 
to  plug  into  your  large  keyboard  PET/CBM, 
PEDISK  II  offers  speed,  reliability,  IBM  compatibility. 
Complete  system  prices  with  DOS  and  cable: 
5"  40  track  1  drive,  143K  J525 

5"  40  track,  1  drive.  286K  690 

8"  IBM  3740  fonnat,  77  track,  250K  995 


PROGRAM  YOUR  OWN  EPROMS 

Bnndlig  Inn  lor  PET/CBM  $78 

EPHOM  Programmer  with  software  (or  all  ROM  versions 
Includes  all  hardware  and  software  to  program  or  copy 
2716  and  2532  EPROMs 


CUM  Siftiin 

Legal  Time  Accounting  Package  445 
Medical  Accounting  Package 
C«i^  CIM  litlMtt  Sitlwin  Ftdoii 
Can  be  tailored  to  meet  most  business  requirements. 

Technician's  Investment  Analysis  Package  500 

Dow  Jones  Portlolio  Management  129 

Personal  Tax  Catulator  65 

Tax  Preparation  System  445 

Wordcratt  80  Wordprocessor  Package  325 

Pascal  Development  Package  235 

/VssemWer  Devekipment  Package  99 

Intelligent  Temiinal  Emulator  30 

Soflpac-I  (Competitive  Software)  29 


FORTH  for  PET 

BY  L  C.  Cargile  and  Michael  Riley  $50 

Features  include: 

full  FIG  FORTH  model. 

all  FORTH  79  STANDARD  extenskxis. 

stnictured  6502  Assembler  with  nested  decision  making 
macros, 

full  screen  editing  (same  as"  wtien  programming  in 
BASIC), 

auto  repeat  key. 

sample  programs. 

standard  size  screens  (16  lines  by  64  characters). 

1 50  screens  per  diskette  on  4040, 480  screens  on  8050. 

ability  to  read  and  wnte  BASIC  sequential  files. 

introductory  manual. 

reference  manual. 
Runs  on  any  16K  or  32K  PET/CBM  (including  8032)  with 
RQ  M  3  or  4,  and  CBM  disk  drive.  Please  specify  conhguration 
when  ordering, 

■Available  soon: 
Metacompiler  for  FORTH  $30 

simple  metacompiler  lor  creating  compacted  object  code 
which  can  be  executed  independently  (without  the  FORTH 
system). 


PaperMate 

50  COMMAND 

WORD 
PROCESSOR 

by  Michael  Riley 


Paper-M  ate  is  a  full-featured  word  processor  for  C  BM/PET 
Paper-Mate  incorporates  60  commands  to  give  you  full 
screen  editing  with  graphics  for  all  16K  or  32K  machines 
(including  8032),  all  printers,  and  disk  or  tape  drives 

For  wnting  text.  Paper-  Mate  has  a  definable  keyboard  so 
you  can  use  either  Business  or  Graphics  machines,  Shifl 
Ixk  on  letters  only,  or  use  keyboard  shift  lock  All  keys 
repeat 

Paper-Mate  text  editing  includes  floating  cursor,  scroll  up 
or  down,  page  forward  or  bacK  and  repeating  insert  and 
delete  keys  Text  bkKk  handling  includes  transfer,  delete, 
append,  save,  load,  and  insert. 

All  formatting  commands  are  imbedded  in  text  for 
complete  control.  Commands  include  margin  control  and 
release,  column  adjust,  9  tab  settings,  variable  line  spacing, 
justify  text,  center  text,  and  auto  pnnt  form  letter  (variable 
block).  Files  can  be  linked  so  that  one  command  prints  an 
entire  manuscripl  Auto  page,  page  headers,  page  numbers, 
pause  at  end  of  page,  and  hyphenatkxi  pauses  are  included 

Unlike  most  word  processors,  CBM  graphics  as  well  as 
text  can  be  used,  Paper-Mate  can  send  any  ASCII  code 
over  any  secondary  address  to  any  printer. 

Paper- Mate  functions  with  16/32K  CBM/PET  machines, 
with  any  printer,  and  with  either  cassette  or  disk 

To  order  Paper-Mate,  please  specify  configuration. 

PipirMiti  II  dlilr  ir  tifi  40.00 


BASIC  INTERPRETER      $200 

Designed  to  support  the  CBM  8096  (8032  with  add-on  64K 
board).  A  full  interpreter  implementation  to  automatically  take 
advantage  of  the  extra  memory  available  to  the  8032. 


8nBiHnlLi<|ir-803?/eOiO 

300 

BPI  Acnyilt  RMlnkli-B032/aaSII 

300 

Hiy^ii  Sottwirt 

Complex  Mathematics 

12.70 

Engineering  Mathematics 

12,70 

General  Mathematics 

12  70 

MCAPCircuit  Analysis  Program 

21.00 

Energy  Miser 

24.50 

CASH  MANAGEMENT  SYSTEM 

$45 

Easy  to  use.  Keeps  irack  of  cash  disbursements,  cash 

receipts,  cash  transfers,  expenses  (or  up  to  50  categories. 

MICRO-REVERSI  hr  PET  by  Michael  Riley 
super  machine  language  version  of  Othello 

TlMllI  VltlH  /  Kit  &  Mllti  by  Michael  Riley 
two  excellent  machine  language  maze  programs 


10 


10 


252  Bethlehem  Pike 
Colmar,  PA  18915 


215-822-7727 


A  B  Computers 


WRITE  FOR  CATALOG 

Add  51,25  per  order  for  shipping  We  pay  balance  of  UPS  surface 
charges  on  all  prepaid  orders  Prices  listed  are  on  cash  discount 
basis.  Regular  prices  slightly  higher  Pnces  subject  to  change 


204 


COMPUTE! 


February  1982.  Issue  21 


Sirius  Software 
Announces  Addition 
To  TTieir  Product  Line 

The  Joyport  for  the  Apple  Com- 
puter provides  expansion  of  the 
game  paddle  port  to  allow  the  use 
of  four  paddles  (with  all  buttons 
functional)  or  to  allow  the  use  of 
one  or  two  Atari'"  type  joysticks. 
Atari  type  joysticks  are  fast,  simple 
and  typically  retail  for  less  than 
$10.00  each.  Some  of  the  features 
of  the  Joyport  are: 

Two  connectors  to  accept 
Atari  type  joysticks.  All  four  axis 
and  the  fire  buttons  are  fully 
functional.  Since  the  analog  inputs 
are  not  used  with  the  Atari  type 
joystick  the  response  is  very  fast. 
No  delays  between  reads  is 
needed.  The  Atari  joystick  can  be 
readjust  as  fast  as  the  keyboard. 

Two  16  pin  sockets  to  accept 
standard  Apple  style  paddles, 
joysticks  or  other  devices  designed 
to  operate  from  the  Apple's  game 
paddle  port. 

A  switch  to  change  from 
Atari  to  Apple  controls.  Both  may 
remain  plugged  in.  No  need  to 
unplug  one  control  to  use  the 
other. 

A  switch  to  select  either  of 
the  two  Joyport  game  paddle 
sockets  to  be  read  as  paddles  0 
and  1  or  even  to  allow  your  soft- 
ware to  select  which  set  of  paddles 
will  be  read  as  paddles  0  and  1 . 

Total  compatibility  with 
exisdrig  software  and  hardware. 
Even  the  use  of  the  Shift  Key  to 
TTL  input  #3  modification  that 
many  people  use  is  compatible. 
No  modification  to  the  Apple  is 
necessary  and  the  Joyport  does 
not  take  up  any  peripheral  slots. 

The  Joyport  .sets  next  to  the 
Apple  with  all  sockets  and  switches 
easily  accessible.  The  Atari  type 
sockets  are  mounted  on  the  front 
of  the  device  and  the  Apple  type 
sockets  are  inside  the  box.  A 
convenient  snap  on  cover  provides 
a  strain  relief  for  the  Apple  type 
sockets  and  sdll  allows  changing 


them  without  getting  inside  the 
Apple. 

A  wide  variety  of  software  is 
being  developed  to  take  advantage 
of  the  added  features  of  the  Joy- 
port, This  includes  most  products 
that  Sirius  Software  will  be  pub- 
lishing as  well  as  software  from 
other  vendors.  New  products 
available  from  Sirius  Software 
that  will  be  compatible  include 
Foosball  —  a  four  player  action 
game  that  is  included  FREE  with 
each  Joyport  purchased  prior  to 
Christmas,  1981.  Cops  and  Rob- 
bers, PGE  —  The  Pascal  Graphics 
Editor,  and  Outpost  are  compat- 
ible with  the  Joyport. 

Existing  software  may  be 
easily  modified.  The  small  (20  to 
100  bytes)  driver  is  relocatable. 
The  presence  or  absence  of  the 
Joyport  can  be  determined  by 
your  software  and  automatically 
enabled.  The  software  can  also 
allow  simultaneous  use  of  the 
keyboard  and  either  the  game 
paddles  or  the  Atari  type 
joysticks. 

The  custom  PC  board  is 
machine  wave-soldered,  hand 
inspected  and  bench  tested. 

Fully  documented  with 
source  code  listings  of  sample 
driver  routines. 

Write  for  details  to  Sirius 
Software  Inc.,  Joyport,  2001 
Arden  Way,  #2,  Sacramento, 
CA  95825. 

Dial/Data  Gives 
Micro  Users  Access 
To  Financioi 
Morlcets ^^ 

A  new  software  program  that  will 
give  microcomputer  users  imme- 
diate access  to  financial  markets 
has  been  developed  by  Remote 
Computing  Corporadon  (RCC). 
The  program  is  called  "Dial/Data" 
since  users  can  dial  RCC's  network 
over  normal  telephone  lines,  log 
on  and  automatically  retrieve  data 
on  commodities,  securities  and 
options. 


According  to  Alan  J.  Schnel- 
w-ar,  Vice  President  of  Eastern 
Support  and  Development  at 
RCC,  Dial/Data  will  add  a  new 
dimension  to  the  microcomputer. 

"We've  developed  a  complete, 
easy-to-use  data  service  that  will 
allow  users  to  sit  in  their  homes 
and  offices  and  have  all  the  daily 
and  historical  price  information 
necessary  to  track  any  investment. 

Schnelwar  explained  that 
micro  users  will  receive  the  same 
data  used  in  the  Merlin  service  by 
investment  professionals. 

Dial/Data  features  the  largest 
collection  of  time-shared  data  on 
commodity  futures,  including 
open,  high,  low,  close,  volume 
and  open  interest  for  all  com- 
modities on  all  major  exchanges. 

The  program  will  also  supply 
all  New  York  and  American  Stock 
Exchange  closing  prices  including 
open,  high,  low,  close,  volume 
and  uptick  volume,  and  all  cur- 
rently traded  option  prices  in- 
cluding high,  low,  close,  volume, 
open  interest  and  the  closing 
price  of  the  underlying  stock. 

"For  Apple  II  users,  RCC 
provides  programs  to  dial  our 
Burroughs  B-7700  main  frame 
and  automatically  retrieve  prices 
and  to  create  and  maintain  data 
files  on  diskette. 

"In  addition,"  she  said,  "The 
Apple  II  data  files  are  compatible 
with  statistical  software  packages 
available  from  other  sources  such 
as  Compu-trac  and  Orion." 

An  important  feature  of  Dial/ 
Data  is  its  ability  to  handle 
dynamic  symbol  changing. 

Nrw  Pnidurl  tclc/isi's  are  selecLexi 
from  submissions  for  reasons  of 
li)nelin('ss.  avaibibh'  space,  and 
general  inlerest  to  <nir  readers.  We 
regret  thai  we  are  unable  to  select  all 
new  product  submissions  (or  publi- 
cation. Reculers  should  be  aware  that 
we  present  here  some  edited  x'ersion 
of  material  submitted  by  vendors  aiul 
are  unable  lo  vouch  for  it^  accuracy' 
at  time  of  publication.  @ 


COMPUTER  CENTER 


31  East  31  (t  St.  (betwean  Madlton  t.  Park  Ave.}  New  York 
460  Lexington  Ave.  (between  46th  &  47th  St.)  New  York 
21  West  Street  (1  Block  tram  Bklyn  Bait.  Tun.)  New  York 


presenting  the  LARGEST  SELECTION  OF  SOFTWARE  EVER  ASSEMBLED. 


for  ATARI®     •     APPLE®     •     PET®     •     and  other  Microcomputers 


at  SUPER  DISCOUNT  PRICES! 


ATARI 

D  PHYSICS      (ATI 245Q 

a   GREAT  CLASSICS      (ATI    24  50 

a   BASICPHYSCOLQGY      (AT) 24  50 

D   PfflNCIPLES  OF  ECONOMICS     (AT). ...2450 

D  SPEULING     (AT)   2550 

D  BASIC  ELECTRICITY     (AT) 24  50 

D   BASI C  ALGEBRA      (AT) 21  SO 

D  3?K  RAMCRAM     (AT) 180  00 

D  KIMGDOM     (ATI  1355 

G   STATISTICSI      (AT) 1795 

a   BLACKJACK      |AT) 1355 

D   BIORYTHM      |AT)    1355 

D   HANGMAN      (AT) 1355 

D  SPACE  INVADERS     (AT)   3595 

D   EUROPEAN  CAPITALS      (AT) 13  55 

D  MORTGAGELOAN     (AT) 13  55 

D  STATES  i  CAPITALS     (ATI 13  55 

□  EDUCATION  SYSTEM      (AT) 22  50 

a   ATARI  BASIC      (ATI 5395 

a  ASSEMBLER  DEBUG     (ATI 53  95 

D   BASKETBALL      (AT) 35  95 

D  ASTEROIDS     (ATI 3595 

D  SUPER  BREAKOUT     (AT)   35  95 

□  MUSIC  COMPOSER     (AT]  53  95 

O  COMPUTER  CHESS     (AT) 35  95 

a    MISSILE  COMMAND      (AT)    35  95 

D   STAR  RAIDERS      (AT|   44.95 

□  TELELINK      (ATI 22  50 

n    PADDLES      (AT) 1795 

D  JOYSTICKS     (ATI 1795 

D   U.S.  HISTORY      (ATI 2150 

n  US  GOVERNMENT     (AT) 24  50 

D  SUPERVISORY  SKILLS     (AT) 24  50 

D   WORLD  HISTORY      [AT] 24  50 

0  BASIC  SOCIOLOGY      (AT)  24  50 

D    PERSONAL  FINANCE      (AT)      |D| 69  95 

ADVENTURE  INTERNATIONAL 

n   AOVENT'JHE  HINT  SHEET 9  95 

D  ADVENTURE  (1.2.31  |D]  (AP,AT|  ,  ,  .  .35  95 
D  ADVENTURE  (4,5.6|  [O]  (AP.ATI  ....35.95 
D  ADVENTURE      (7,B.9|      [O]      (AP.AT)   .  ,  .  .35  95 

D  ADVENTURE  (10.1 1.12)  [D|  (AP.AT|    18,95 

D   ADVENTURE  (specify  1-121  (AP.ATI 17.95 

D    PLANETOIDS      [D]      (AP)  17  95 

D   PLANETOIDS     (AP) 17  95 

n    POKER      (API    .,..,      1795 

n    POKER     (AP)      (01    1995 

D  KID-VENTURE  111      (AP) 1795 

D  STARTHEK3.5     (AT) , 1795 

D  MOUNTAIN  SHOOT     (AT) 13  45 

D   SUNDAYQOLF      (AT) 13,45 

D   ANGLE  V/ORMS      (AT) 13.45 

D  DEFECTIONS     (ATI  1345 

n    GALACTIC  EMPIRE  |AT| 1795 

AVALON  HILL 

a    MIDWAY     (AT.AP.P) 13  60 

n   NUKE  WAR      (AT.AP.P) 13  50 

n   PLANET  MINERS     (AT.AP.P) 13  50 

O   CONVOY  RAIDER      (AT.AP.P) 13  50 

D   Bl  BOMBER      (AT.AP.P)   1350 

D   LORDS  OF  KARMA      (AT.AP.P) 18  00 

D   CONFLICT  2500      (AT.AP.P) 13  50 

□  COMPUTER  ACQUIRE    (AP.P) 18.00 

□  TANK  TICS      (AP.ATI  21  50 

AUTOMATED  SIMULATION 

D   TUESDAY  QUARTERBACK  (D|  (AP)  ,,.      26  95 

DSTAHWARHIOR      |C.D|  |AP,AT)    35  95 

aTHREEPACK     ID]      (AP,P)    45  00 

D  STARFLEET  ORION     |C.D1     (API 22  50 

D  STARFLE6T  ORION     |C|     (AT.P| 22  50 

D    INVASION  ORION      |C.D|      (AP.AT)   . . .  ,    22  50 

a    INVASION  ORION      [C|      (AT.P| 22  50 

n   APSHAI      ID]      (API 35  95 

D  APSHAI     [C]      (P)  , 35  95 

a  CRUSH.  CRUMBLE*  CHOMP  [D|  (API  .,..26.95 


If  you  don't  see  II 
listed,  write... 
we  probably  have 
It  In  slock! 


Check  program  desired. 
Complete  ordering  information 
and  mail  entire  ad. 
Immediate  Siiipments  from  s!ocl(. 


KEY: 

AT-Atari 
AP-Apple 
P-Pet 
D-on  Disc. 
C-Cassette 


If  not  marked-Cassette 

ATARt  IS  a  Iradsmark  ot  ATAHI INC, 
1        APPLE  IS  a  Irademark  ol  APPLE  COMPUTER.  INC. 
I       PET  Is  a  trademark  ol  COMMODOflE  BUSINESS  MACHINES. 
V    Prices  subiect  to  change  without  notice. 

N*. 


AUTOMATED  SIMULATION 

D  RYN  ID.CI  lAP.ATl 17,95 

D  HYN     IC|     (P.AT) .....1795 

a  MORLOC    [C.Di     (AP) 17,95 

D  MORLOC    [C]     (P.ATI 17,95 

D  RIGEL     [C.D|     (AP.ATI) 26  95 

D  RiGEL     1C|     (ATP) 26,95 

D  HELLFIRE     ID]     (AP) 35,95 

D  HELLFIRE     [C|     |P)   35,95 

QUAUTV  SOFTWARE 

D   6502  DISASSEMBLER     (AT) 10  55 

D   ALIBABA      (AT)      [D|   28.95 

n  ATARI  ASSEMBLER     (AT) 22,50 

n   BABBLE     (AP)     1D| 1795 

D  BATTLESHIP  COMMANDER  |D)  (AP) 17  95 

D  FASTGAMMON     |D|     (AP) 22  50 

D  FASTGAMMON     (AP.AT) 17  95 

D  FRACAS  ADVENTURE     ID]     (AP)  2250 

D  TANKTRAP     (AT)  10  55 

DTANKTRAP      (AT)      |D| ,13-55 

a   TARI  TREK     (AT) 10,55 

D   TARI  TREK     (AT)      |01 1 3  55 

a   FORTH      (AT)      ID] 72  00 

PERSONAL  SOFTWARE 

a   DESK  TOP  PLAN  II      |D|      (AP) 175,00 

D   MONTY  MONOPOLY     (D|     (AP| 3100 

D   VISICALC     ID]      (AT.P.AP) 170,00 

D  ZORK     IT)     (Dl   .,. 3S,9S 

a  VISIDEX     (AP)     (D|      170-00 

D  VISIPLOT     lAP)     |D1       16200 

D  VISITEHM     (API     |D|       135  00 

a   VISITREND     (AP)      [D]       210  00 

□  VISIFILE      |AP)      [D]      220,00 

CAUF.  PACIFIC 

D3-DGRAPHICa      (AP)      |D]  35,95 

D  AKAIAPETH     (AP)      10]    31,50 

GAPPLEOIDS     (AP)     |D1 26,95 

D  F6NDEH  BENDER     (API     (D]    22  60 

D   RASTER  BLASTER      (AP)      [D] 26  95 

a  BUDGES  SPACE  ALBUM     (AP)     (D|.,. .35,95 
a  BUDGE'S  TRILOGY     (AP|     |D| 26,95 

STRATE61C  SIMULATIONS 

D  COMPUTER  AMBUSH    (D]     (AP)   51,50 

D   COMPUTER  BISMARCK      [0]      (AP) 51,50 

□  COMPUTER  CONFLICT     [D]      |AP) 3500 

D  COMPUTER  NAPOLEONICS  |D|  (API 51,50 

□  COMPUTER  QUARTERBACK  ID]  (AP). ,.  .35,00 

D   AIR  COMBAT  (D|  (AP| ,., 51-50 

D  WARP  FACTOR     |D]     (AP) 35  00 

□  CUTHROATSi  CARTELS      |D1     (AP) 35,00 

a   OPERATION  APOCALYPSE  [Dl  (AP) 61,50 

D   TORPEDO  FIRE     [D|      (AP) 51,50 

D  PRESIDENT  ELECT  (0]  (AP) 31.50 

D  MAJOR  LEAGUE  BASEBALL  |D)  (AP)  .,..31-50 

SUB-LOGIC 

D  3DGRAPHICS     (AP) 45.00 

aOOGRAPHICS     |D|     |AP| 53,00 

D  A-2-FS1  FLIGHT  SIMULATOR    (AP)  22,00 

D  A-2-FS1  FLIGHT  |D|      (AP|  29,00 

MICROSOFT  SOFTWARE 

D  ADVENTURE     |D]      (AP|  25,50 

□  OLYMPIC  DECATHALON  [D|  (AP)    25-00 

a   TYPING  TUTOR     (AP)      |Di   22,50 

a  TYPING  TUTOR     (AP)  13,55 

D  Z-aOSOFTCARD     iD]      |AP| 315,00 

n    16k  RAM  BOARD     (API    165,00 

ARCADE  PLUS 

D  GHOST  HUNTER     (AT) 26  95 

DGHOSTHUNTER     (AT)     |D]  31.50 


ON  UNE  SYSTEMS 


n  HIRESADVEN,  10 
D  HI-RES  ADVENkI 
D  HI-BESADVEN  #2 

n  hi-hesadven  « 

D  HI-RES  CRIBBAGE 


(API 

|D| 

|D| 

ID] 

|D1 


IDl 17.9S 

(AP( 22.50 

(AP.AT) 29.00 

(API 31.00 

(API   22,50 


a   PADDLE  GRAPHICS     lO]      (AP) 36,00 

D  TABLET  GRAPHICS     (D|     (AP)  44,95 

D  MISSILE  DEFENSE     |0|     (AP) 26,95 

D  SUPERSCRIBE  II     |D1     (AP)   115,00 

SIHIUS 

DCYBERSTRIKE     ID)      (AP) 3600 

DSTARCRUISER     1D|     (AP) 22.50 

O  GORGON  I0|  (AP) 33  00 

D   PHANTOM  FIVE     |D}      (AP)   36  00 

D   SPACE  EGGS     (Dj      (AP)    .,,26,95 

STNERDISTIC  SOFTWARE 

D   DUNGEON  A  WILDERNESS  [D|  (AP) 29  00 

D  ARCTURUS     (Dj      (AP) 31.SQ 

D  DUNGEON     [0|     (AP) 15.75 

□  ODYSSEY     |D|     (API 27.00 

D  HIGHER  GRAPHICS     [D]     (AP)  31.50 

D  WILDERNESS    (AP) 1S7S 

□  WILDERNESS     [D]      (AP) la.OO 

D  PROGRAM  LINE  EDITOR     |D)     (AP| 38,00 

BROOERBUHO 

a  GALACTIC  EMPIRE     (API     [D| 22,50 

D  ALIEN  RAIN     (AP)     |D) 2100 

D   HYPER  HEAD  ON      (AP)      |D| .,...22,60 

D  GALACTIC  REVOLUTION     (AP)     |D] 22  50 

DAPPLEPANIC     (AP)     [D]  26  95 

□  TAWALAS  REDOUBT     (AP)      |D| 26.95 

O  GALACTIC  TRADER    (AP)     (D)  22  50 

□  SNOOGLE      (AP)      [D| 32,95 

MUSE  COMPANY 

D  ABM     [D|     (AP)  2250 

□  APPILOT  II     [Dl     (AP) 75,00 

□  BEST  OF  MUSE     [D)     (AP), 35,95 

□  GLOBAL  WAR     ID)      (API 22  50 

□  SUPERTEXTII      [D]     (AP)  13500 

□  THREE  MILE  ISLAND      |D]      (AP)    35  95 

a  HoaoTWAHs   [D]    (ap) 32.00 

□  THEVOICE     (Dl     (AP) 35.95 

IRIDIS 

□  IRIDIS  I  (AT)  ,, 6,96 

□  IRIDISl  (AT)     (Dj ..,. 11.75 

D  IRIDIS  2  (AT) 14  60 

D  IRIDIS  2  (AT)    [Dl 16,95 

SPECTRUM  COMP. 

□  GALACTICCHASE     AT  |D)   2695 

□  GALACTICCHASE    AT 22.50 

CRYSTAL  COMP. 

□  WOIILD  WAR  III  AP.AT  I  D| 26  96 

□  GALACTICQUEST  AP.AT|D| 26,95 

Q  WATERLOO   AP.  AT  jDl  44  95 

□  HOUSE  OF  USHER  AP,  AT  [Di 26  95 

O  QUEST  FOR  POWER  AP.  AT  [Dl 35,96 

D  FANTASYLAND  2041   AP.  AT  (Dl 53  95 

D  SANDS  OF  MARS  AP.  AT  [01  35  95 

O  PROTECTOR  AP  AT[D1 35  95 

□  FORGOTTEN  ISLAND  AP.  AT  IDl 35  95 

D   LASAH  WARS  AP,  AT|DJ., 26  95 

D   IMPERIAL  WALKER   AP.  AT  |D1  26  95 

□  LITTLE  CRYSTAL   AP.  AT  [Di 35,95 

HATDEN 

□  SARGONII      (API 25  00 

□  SARGONII      (API      [Dl 30-00 

K-BYTE 

□  KRAZV  SHOOTOUT  (AT)  CARTRIDGE  . , .  44.96 


Ship  the  above  programs  as  checlteij  to: 
Mr. (Mrs    


Aildress 
City 


Numbei  ol  Programs  Ordered 

Amount  ol  order 

N  Y,  residents  add  Sales  Tax 

Add  shipping  arvywhere  in  the  U,S, 


3.00 


State 


-Zip- 


I  have  a 


Name  o(  Compuler 


Total  amount  enclosed 

Charge  my:  D  Master  Charge  D  Visa 

Signature    


K  memory       Card  No 


COMPUTE/FEB, 'B2 


Personal  Ctiecks  please  allow  3  weeks. 


-  Enptres  . 


Mail  to: 


DIGIBITTE  SYSTEMS  GOBP. 

31  East  31st  Street,  New  York.  N.Y.  10016 
OUTSIDE  NEW  YORK  GALL  TOLL  FREE  (800)  221  -31 44  . 

IN  NEW  YORK  CALL  (212)  889-8130  / 

p,^  ^^  ^^  ^^  ^^  ^^  ^^  ^^  ^^  ^^  ^^  ^^  ^^  ^^  ^^ ^^  r^ 


I 


FEBRUARY 


EPSON 
MX-80 


«^ 


INTERFACES  &  CABLES 
IEEE  S55  RS-232  $70. 
APPLE  INTERFACE  &  CABLE  S90. 
TRS-80  CABLE  S3S. 


$449.00 


SPECIALS 


$159.00 


NEC  GREEN  12   MONITOR 
JB  1201M 


PERSONAL 
COMPUTERS 


CAU  OMEGA  TOU  FREE! 


r\ 


EAST  COAST 

1  -800-556-7586 

OMEGA  SALES  CO. 

12  Meeting  St. 

Cumberland,  Rl  02864 

1-401-722-1027 


WEST  COAST 

1-800-235-3581 

OMEGA  SALES  CO. 

3533  Old  ConejoRd.  #102 

Newbury  Park,  CA  9 1320 

1  -805-499-3678 

CA  TOLL  FREE  1-800-322-1873 

OMEGA  SALES  COMPANY 

We  Accept  C.O.D.'s  •  Stock  Shipments  Same  Day  or  Next*  No  Surcharge  for  Credit  Cards  'All  Equipment  Factory 
Fresh  w/MFT  Warranty  •  We  Carry  the  Complete  Line  of  Personal  Software  •  Prices  do  not  Reflect  Shipping  Charges 
Rhode  Island  and  California  residents  please  add  6%  Sales  Tax 


NEC  PC-8023  Printer $629.00  ^^ 

NEC  5510  Spinwriter  (7710) 2345.00    UJ  J^  ^^ 

NEC  5520  Spinwrlter  (7720) 2695.00    ^J  Q^  j  ,  j 

NEC  5530  Spinwriter  (7730) 2345.00    ^^  ^#  SJ 

NEC  JC  1201  M(A)- Color  12"  Monitor 359.00    ^k  V^  ^^ 

NEC  J6  1201  M  12"  Green  Monitor 159.00    f\  ^^  ^H 

Okidata  Microline-80 379.00    ■■  ^i             . 

Okidata  Microline-82A 499.00    ^T  ^L  ^^ 

Okidata  Microline-83A .  729.00    ^*^  ^^ 

Diablo630 1995.00    m     «  ^#  UJ 

Apple  II  Plus  48K 1199.00    V^  ^^  ^^ 

Apple  Disk  w/3.3  DOS  Controller    569.00    ^^  ^1  ■■ 

Apple  Disk  w/o  Controller 469.00    j^^  ^0^ 

Hazeltine  1420 799.00    ^"  ^^ 

Northstar  Horizon  II  32K  QD 2925.00    ft^  ^% 

Anadex  DP-9500/9501 1249.00    |  ,  |  LJ 

Televideo  91 0 559.00    ■■■  ^"B  ^^ 

Televideo  91 2C 669.00    |ii^  ^^  ^^ 

Televideo  920C 729.00    ^^  ^^  ^^ 

Televideo  950 929.00    ^^^  ^^  ^^ 

CBM  8032  Computer    1 149.00    ^^i  \^  ^J 

CBM  8050  Disk  Drive    1 349.00  #if% 

CBM 4032  Computer    1029.00    ^U  ^U  W# 

CBM  4040  Disk  Drive    1029.00    j^  ^^  ^ 

CBM  4022  Printer 649.00    QC  ^^  ^^ 

CBMVlC-20 269.00    ^^  ^^  UJ 

Leedex/Amdek  1 OOG 1 69.00    ^^  ^^  ^-^ 

Leedex/Amdek  Color  -  1  1 3"  Color  Monitor  ,.  .  329.00    ^^  ^^^  ^^J 

Microtek  16K  Ramboard  for  Atari  800 79.00    ^^J  ^^C  ^^ 

Microtek  32K  Ramboard  for  Atari  400  and  800  149.00    ^^  V^F  |JU 

Qume  Sprint  9/45  (Full  Panel)    2295,00   ^J  ^^ 

Atari  400  1 6K    349.00    ^^  ^^  bJ 

Atari  825  Printer 599.00    ^^  ^"  ^^ 

Atari  850  Interface 139.00    ^^  UJ  ^^ 

Atari  830  MODEM 1 59.00    ^^  ^^  ^^ 

Atari  810  Disk  Drive 449.00    ^^  bJ 

Atari  800  16K    749.00    J?  "^^ 

Epson  AAX-70 349.00    ^  J 

Epson  MX-80 449.00    ^^ 

Epson  MX-80  FT 549.00    ^J 

Epson  MX-lOO  FT 729.00 

PRICES  ARE  SUBJECT  TO  CHANGE  WITHOUT  NOTICE 
WE  CARRY  THE  COMPLETE  LINE  OF  ATARI  SOFTWARE,  PERIPHERALS  AND  ACCESSORIES 


PERSONAL  COMPUTERS 

OMEGA  SALES  COMPANY 


OKIDATA  MICROLINE  30A 

MATRIX  PRINTER 

$379.00 


ATARI  810  DISK  DRtVE 
$449.00 


AMDEK  COLOR-1  MONITOR 

$329.00 


EPSON  MX-lOO  FT  PRINTER 
$729.00 


208 


COMPUTEI 


FebTUory.  1982.  Issue  21 


Advertisers  Index 


AB  Computers  151,202,203 

Aardvark  Technical  Services,  Ltd 119 

Abacus  Software 33 

Academy  Software 175 

Actel<  49 

Alptia  Logic  Business  Systems 63 

Alternate  Reality  Software  105 

Arcade  Pius 79 

Artworx 23 

BYTM  Systems 55 

Batteries  Included  147 

Basic  Software  Service 151 

Beagle  Brothiers  73 

John  Bell  Engineering.  Inc 43 

Beta  Computer  Devices  49 

Ttie  Bit  Bucket  117 

Byte  Microsystems  Corporation  51 

CE  Software  111 

CFI  171 

CGRS  Microtecti  59 

Canadian  Micro  Distributors  Ltd 129,132,144 

CMS  Software  Systems 2,3 

C-Mart  191 

Cansoft  Data  Inc. 141 

Cascade  Computerware  163 

Comm'Data  Systems  Inc 172 

Commodore  Computer  Systems BC 

Ttie  Computer  Bus 46 

Computer  House 117 

Computer  Mail  Order 184,185 

Computer  Mat 163.177 

Computertlme,  Inc 107 

COMPUTE'S  First  Book  Of  Atari  7 

COMPUTE'S  First  Book  Of  PET/CBM  6 

COMPUVOX  42 

Connecticut  microcomputer.  Inc. 161 

Consuitors  international  21 

Consumer  Computers 201 

Creative  Software  11 

Crystal  Computer 56,57 

Cursor,  Ttie  Code  Works 149 

Cyberiainc 139 

Data  Resource  Corp ...121 

Digibyte  Systems  Corp 205 

Don't  Ask  Software 55 

Dr.  Daley's  Software 143 

Dynacomp  40,41 

ECX  Computer  Company 55 

ETC ■  153 

Eastern  House  Software  26 

Eclectic  Systems  Corporation 71,187 

Electronic  Specialists,  Inc 18 

Excert,  Inc 27 

ExecomCorp 163 

FSS  161 

Gebelli  Software,  Inc 13 

Ttie  Great  Western  Software  Co 163 

HW  Electronics  81 

Higti  Country  Microsystems ..116 

Horizon  Simulations  43 

Human  Engineered  Software 169 

Huntington  Computing 47 

In-Home  Software 87 

Intec  Pef  iptierais  Corporation 97 

Interlink  Inc 149 

Iridis,  Tfie  Code  Works 111 

Jini  Micro-Systems,  Inc 37,61 

Krell  Software 24,25 


LJK  Enterprises,  Inc 29 

Leading  Edge  Products,  Inc IBC 

Lem  Data  Products 147 

Lifeline  Communications,  Inc 87 

Lo-Ball 201 

Lyco  Computers  195 

MED  Systems  Software  103 

Macrotronics  Inc 186 

Magic  Carpet  181 

Meta  Software  Engineering  68 

Micro  Business  World 197 

Micro-Ed,  Inc 17 

Micro  Periphierol  Corp 97 

Micro  Spec  Ltd 175 

Micro  Teclnnicol  Products 49 

Micro  Techinology  Unlimited 155 

Micrograms   21 

Microsoft  Consumer  Products  4 

Microteic  Inc 53 

Mosaic  Electronics 76 

Mountain  Computer  IFC 

New  England  Electronics  Company  34,35 

Netronics,  R  &  D  Ltd 18 

Nicrotom  &  Company 61 

Nufekop  178 

Olympic  Sales  Company 193 

Omega  Soles  Co 206,207 

On-Llne  Computer  Centers  of  Oklatioma  City 101 

On-Llne  Computer  Centers  of  Oklatioma  City 107 

On  Line  Systems  15 

Oppenhieimer  Software 190 

Optimized  Data  Systems 167 

PETTED  Microsystems 157 

Pacific  Exchanges  42,66,75,95 

Philadelphia  Computer  Discount 199 

Pretzelland  Software  127 

Professionol  Software  Inc 1.9 

Program  Design  Inc 105 

Ttie  Program  Store 31 

Ttie  Programmer's  Institute 116 

Questar  international  Inc 180 

Quality  Software 103 

Quantum  Data  Inc. 61,179 

RC  Electronics,  Inc 65 

RETCOM  Systems,  Inc 165 

RN8  Enterprises  45 

Rennaisance  Technology  Corp 20 

Santa  Cruz  Educational  Software 91 

Skyles 137,188 

Software  by  Sasso 134 

The  Software  Connection 11 

Software  Galore 192 

Soffwore  Street  115 

Spectrum  Computers 83 

Street  Electronics 67 

Sunrise  Software 105 

Swifty  Software 85 

Syncro,  Inc 105 

Synergistic  Software  97 

TIS  20 

T'Aide  Software  Company 43 

T.H.E.S.LS 102 

Unicomm 189 

United  MIcroware  Ind 169,182 

University  Microfilms,  International  61 

Vtxel,  The  Code  Works  177 

Voicetek 157 

Warren's  Computer  Systems  , 193 


3 
-< 

D 

<; 

Q 


D 
o 


X 

"D 


za  nnnn 

3  c^°  CD  CD 


□  □DS 


0 


C/) 


Q 


Q.0 


Q  ^ 


Q-aoas-oa 

^^  3  U   O  T-i    -I 
</>  3  r>    3     M 


CD 

en 
on 


03 


?oS 

=  ¥  CD 

CO  (D  5 


O 

0) 


Q 
O 
O 


o 
n 

3 

Q 
Q 

3 

CD 


a 


Q-  -d' 

O  =i: 

?  o 

3  D 


i^6 

je         3 

ODD- 
o 

9       In 


1^' 


■< 

CD 
Q 


55" 
ut 

C 

c 

en 

na 

(D  ^ 

*^ 

t/)  s 

o  2 


□n 

OO 

SS2 


o 
o 

■o 


O      "' 

4-  — <  S 


3 

■o 

» 

3 

w 

o 

o 

tSf. 

o 

-n 

l9n 

O 

U 

Q  W  V 

d 

R 

n^CL 

er  Line 
5-8112 

□11  SOO-6 

1 

i 

CD 

W 

fr 

£ 

I- 

5   CB 

3 


D    DD 


c 

en  S 


I    B 


3 

■B 

O 

3 

g 

n 

o 

="^0 

O 

-n 
Q 

owV 

(_ 

oSa 

' 

-V  5 

o" 

Ol«r- 

en 

M 

i 

5 
o 

0) 

M 

! 

r-> 

CD  i-^ 

=f 

CD  X 

m 

3="  re 

CT 

3,  -K 

l_ 

o  ^ 

fi) 

(O 

CD 

CD 

— ( 
3- 

c/". 

O 

D 

c/s 

E 


nno  nnns 

w  o  3    o  s2;S 


(D 


''^■o  *  r  -I  0- 

Z.C  ?  <  TJ  — : 

<  sr*  5.  5.  « 

»5g  J  »  S 


(A 
<t> 

<v 
a 

Q 

o 


>0    -D  -0 

n 

Q  Q  Q 

o 

^  ■<  ~< 

O 

ag  3 

c 

<0  CD 

GO  ^     D 

53  if 

^  CO  ti 

D  c  Q 

M   D  O 

?&0 

pa3 

Q  o^ 

Q-S  Q 

^o^ 

■     0   :* 

D   Z 

°o 

<^  Q 

CO  M 

D-Ci 

0 

D 

?^ 

5" 

? 

3 

m 

o' 

CD 

Q 

^ 

o 

D 

CD 

< 

0 

d 

0 

o 

n 

3" 

Q 

CQ 

CD 

o 

o 

c 


Q 


CD 


'"  :;  — ; 
o  CD  _J 

C    ZT 
CJCD 

o 


>CD 


CD  C 
o  '^ 


CO  £i  (^  ro 
00  00  CX)  en 

CO  p"  m  > 


D-Q.I3 


CD 

o 

Q 


o 

'> 

■o 
o  <■ 

cy>3.  (D 

IT  =r  ^ 


3" 

CD 

®  , 

CO  ' 

c 
— 1 

Q 
O 
CD 


>o 


7^-^Q 


o  — 


CD  -i 

3     LO. 


Q   ^-. 


> 


Q 

C/5 


>  CD 

Q  -< 
Q  F 


3 
o 

CO 

a 

<" 

© 


o 


Q 
O 

— *> 

O 

O 

o 

3 


0 

Q 

a 

CD 


o 
o 

s 

■o 


J  ^ 

^  —  a 

5i,  m  di 


?0 

■n 

0 

O 

Q 

a 

(D 

(D(Q 

(A 

3 

Cfl 

LU 

> 

LU 

O 

•rr  n 

1- 
< 

1- 
U) 

a 

111 

< 

<f 

111 

III 

o 

a. 

to 

UJ 

_l 
< 

5 

I 
1- 

z 

n 

LU 

Ll 

1- 

z 

^ 

^ 

3 

_J 

< 

^i 

>i 

— 'i 

Q_  " 

LUg 

DCs 

CA)% 

CO^ 

LLJ§ 

2h 

CO^ 

Z) 

00 

o 

c 

'n       00 
O      O 

o>oo 
>  o 


o 

O 


g^ 


Q 

o  = 

-Q  D 

1^2  o 
u5  c^ 


_i 

< 

^^1 

>f 

_i  8 

n  ^ 

LUg 

CCo 

CO^ 

coi 

Liif 

Z^ 

CD- 

D 

CD 

0) 

c 

N         00 
O         O 

0)0)0 


o 


>  a 


1=  O 


D 

E 
o 
o 


O  LO  CD 


0) 


c 

0 


00 

O 

D>CDO 


Q  < 


O 
< 

LO 


O 


O  LO  DO 


o< 


CO 


(J     t     '^ 


0> 

c 

O 

D>  CD 


00 

o 
o 


D. 

o 
o 


>  o 


O 
< 

LO 


D 

E 
o< 


LO  cn 


CO 

3 


FORGETS." 


Elephant    floppies.  soft  sector.  And  they  sell  at  some  of  the  lowest 

They're  guaranteed  to  meet  or  l^eat  every  indus-  prices  in  the  business. 

try  standard  for  quality.  They  come  standard  with  Elephant  Flexible  Disks. 

reinforced  hub  rings  at  no  extra  cost.  They  come  They're  heavy  duty.  They  work  for  peanuts. 

in  every  popular  5'/4"model,  in  both  hard  and  They  never  forget.  Get  yourself  a  trunkful 

HEAVY  DUTY  DISKS. 

Distributed  Exclusively  by  Leading  Edge  Products,  Inc.,  225  Turnpike  Street,  Canton,  Massachusetts  02021 
Colt:  toll-free  1-800-343-6833;  or  in  Massachusetts  call  collect  (617)  828-9150.  Telex  951-624. 


THE  COMMODORE  COMPUTERS 

"FROM  300  TO  1995,  THEY  COST  LESS  AND  GIVE 
YOU  MORE  FOR  YOUR  MONEY  READ  OURCHARI" 

— William  Shatner 


The  idea  ofa  conipuier  in  every  office  and  home  used  to  be 

science  fiction.  Now  it's  becoming  a  reality.  The  question  is, 

with  so  many  to  choose  from,  which  computer  should  you 

buy?  When  you  consider  the  facts,  the  clear  choice  is 

Commodore. 

COMPARE  OUR  $995  COMPU  TER 


[■r.VIl  RK.S 


Base  Price 
12"  Green  Screen 
I KEE  Interface 
TOTAL 

Upper  &  Lower 
Ca.se  Letters 
Separate  Niimerie 
Ke\  Pad 
Intelligent 
Peripherals 
Real  rime  CU)ek 
Maxinuini  SVi"  Di.sk 
Capacity  per  Drive 


COMMOl'OKK 

4(H6 


Standard 

Standard 

S995 

Standard 

Standard 

Standard 
Standard 


APl'LK 
II 


SI. 33(1 
299 
300 


500  K 


$1,929 

NO 

NO 

NO 
NO 

143  K 


IB.\! 


Standard 

Standard 

NO 
NO 

160  K 


l'r.t«  ar=  as  o" Ihe  nioM  rKenl  publ.ihed  price  li^is.  Scplciiihcc.  1981  .ind  jppiov.muic  Ih^ 
.:apabililieM>f  lhtll6Kl  PETM016.  Disk  Drives  iinj  Pr.nlers  arc  nol  mdudcd  m  prices-  M.Hlel- 
shnan  vir>  in  Iheir  dcjree  uf  c^pandabililv 


Man)'  experts  rate  Commodore  Computers  as  the  best 
desk-top  computers  in  iheir  class.  They  provide  more  storage 
power-up  to  1,000,000  characters  on  5=A"  dual  disks-than 
any  systems  in  their  price  range,  Most  come  with  a  built-m 
sreen  display  screen.  With  comparable  systems,  the  screen  is 
an  added  expense.  Our  systems  are  more  affordable.  One 
reason:  we  make  our  own  microprocessors.  Man\' 
competitors  use  ours.  And  the  compalibilily  of  peripherals 
and  basic  prtigranis  lets  you  easily  expand  your  system  as 
your  requiren-ients  grow.  Which  helps  explain  why 
Commodore  is  alreTtdy  the  No.  1  desk-top  computer  m 
Europe  with  more  than  a  quarter  of  a  million  computers  sold 
worldwide. 

WE  WROTE  THE  BOOK  ON  SOFTWARE. 
The  Commodore  Software  Encyclopedia  is  a  com 
prehensive  directory  of  over  500  programs  for 
business,  education,  recreation  and  personal  use. 
Pick  up  a  copy  at  your  local  Commodore  dealer 


FULL  SERVICE.  FULL  SUPPORL 

Commodore  dealers  throughout  the  country-  offer 
you  prompt  local  service.  In  addition,  our  new- 
national  service  contract  with  TRW  provides 
nationwide  support.  Visit  your  Commodore 
dealer  today  for  a  hands-on  demonstration. 


\     CnnunoilDrc  Compuier.Sislenis    Canadian  Rc-,iOi:iii5.:  I 

(iHI  Ntdorc  Road  Coniniininrc  CnnipiU'.M  SyMienis 

Kmn  or  Prussia.  PA  19406  .^370  Pharnwi:;'  .Avenue 

Agincourt.  Ontario,  Canada,  MIW  2K4 

Please  send  me  more  information.  cbm-co 

Name 


Title- 


ft  commodore 

^  COMPUTER